从上到下打印二叉树
- 通过,剑指 Offer 32 - I. 从上到下打印二叉树, 剑指 Offer 32 - II. 从上到下打印二叉树 II,整理广度优先BFS方法。
剑指 Offer 32 - I从上到下打印二叉树
- 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。
例如:
给定二叉树: [3,9,20,null,null,15,7],
返回:
[3,9,20,15,7]
- 思路:可以使用层次遍历方法,利用bfs广度优先遍历的方法进行遍历,然后保存到list中,广度优先遍历借助队列结构进行遍历。
- 步骤:首先定义res = [] ,queue = [root],如果队列为空则退出遍历,然后节点出队node = queue.pop(),再将node.val加入res中,最后再将node的左右子节点入队(若左右子节点存在)。
class Solution:
def levelOrder(self, root: TreeNode) -> List[int]: