📅  最后修改于: 2023-12-03 15:06:20.008000             🧑  作者: Mango
二叉树的中到上下顺序遍历是一种常用的二叉树遍历方式,它可以按照从上到下、从左到右的顺序遍历二叉树。这种遍历方式可以用于查找二叉树中某一层的节点,或者输出整个二叉树的层级结构。
使用数组或队列来存储二叉树的节点,在遍历的过程中,将每一层的节点逐个输出即可。
具体步骤如下:
下面给出Python语言的实现代码,其中我们使用了一个queue队列来存储节点,以及一个level来记录当前层级。
def levelOrder(root):
if not root: return []
res, level = [], 0
queue = [(root, 0)]
while queue:
node, cur_level = queue.pop(0)
if cur_level == level:
res[level].append(node.val)
else:
res.append([node.val])
level = cur_level
if node.left:
queue.append((node.left, cur_level + 1))
if node.right:
queue.append((node.right, cur_level + 1))
return res
二叉树的中到上下顺序遍历是一种比较常用的遍历方式,可以用于查找某一层级的节点,或者输出整个二叉树的层级结构。在实现的过程中,我们使用了数组和队列来存储节点和层级,同时维护了一个level来记录当前层级。