def LevelOrder(bt): #层次遍历的算法 if not bt: return queue = [bt] while queue: node = queue.pop(0) print(node.value) if node.left_child: queue.append(node.left_child) if node.right_child: queue.append(node.right_child)
时间: 2024-02-12 15:05:54 浏览: 118
一个简易的遍历算法的实现
这段代码存在缩进错误,下面是修正后的代码:
```
def LevelOrder(bt):
# 层次遍历的算法
if not bt:
return
queue = [bt]
while queue:
node = queue.pop(0)
print(node.value)
if node.left_child:
queue.append(node.left_child)
if node.right_child:
queue.append(node.right_child)
```
在这个算法中,我们使用一个队列来存储待遍历的节点。首先将根节点加入队列,然后开始循环,每次弹出队首节点,将其值打印出来,然后将其左右子节点加入队列中。重复这个过程,直到队列为空。
另外,要注意代码的缩进,否则会导致语法错误。
阅读全文