102-二叉树层次遍历

题目:按层输出二叉树,每层一行

def levelOrder(root):
    if not root:
        return []
    queue,res = [],[]
    queue.append(root)
    while queue:
        level_size = len(queue)
        current_level = []
        for _ in range(level_size):
            node = queue.pop(0)
            if node.left:
                queue.append(node.left)
            if node.rirht:
                queue.append(node.rirht)
            current_level.append(node.val)
        res.append(current_level)

    return res

注:

使用队列,这里是每层一行,需要再设置一个变量,用来存储每层的节点。当前队列的所有元素即为现层二叉树的所有节点。

posted @ 2019-08-18 21:31  尘世中一个迷途小书童  阅读(150)  评论(0编辑  收藏  举报