题目:按层输出二叉树,每层一行
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
注:
使用队列,这里是每层一行,需要再设置一个变量,用来存储每层的节点。当前队列的所有元素即为现层二叉树的所有节点。