剑指 Offer 32 - I. 从上到下打印二叉树
树的层序遍历,BFS
题目链接-来源:力扣(LeetCode)
从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。
例如:
给定二叉树: [3,9,20,null,null,15,7],3
/
9 20
/
15 7
返回:[3,9,20,15,7]
思路:
树的层序遍历,本质上是图的 BFS 算法。只需要借助一个队列即可实现。
一开始入队根节点,之后循环从队列中弹出节点进行访问。对访问到的节点,打印后将左右子节点依次入队,循环操作即可完成遍历。
时间复杂度:O(n)
空间复杂度:O(n)
实现:
1 | class Solution { |
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.