天天看点

python二叉树广度优先遍历(层次遍历)

即从树的root开始,从上到下从从左到右遍历整个树的节点

代码实现:

def breadth_travel(self):
    """利⽤队列实现树的层次遍历"""
    if root == None:
        return
    queue = []
    queue.append(root)
    while queue:
        node = queue.pop(0)
        print(node.elem)
        if node.lchild is not None:
            queue.append(node.lchild)
        if node.rchild != None:
            queue.append(node.rchild)