我已经在 c 中完成了一棵红黑树,我发现很难按级别顺序打印它。我有一个打印顺序,但我无法想象我应该如何在控制台打印中将它显示为树。可行吗?我们可以在这里实现 BFS 或 DFS 吗?我在 wiki 中找到了一个算法,但我无法应用它。如果有人有 C 语言的代码,你能把它贴在这里以便我研究吗?来自维基:
levelorder(root)
q = empty queue
q.enqueue(root)
while not q.empty do
node := q.dequeue()
visit(node)
if node.left ≠ null
q.enqueue(node.left)
if node.right ≠ null
q.enqueue(node.right)