二叉树的层序遍历与几种变式
1.最原始的层序遍历
题目如下
思路:使用队列这种数据结构,先将根节点存入,然后依次判断队列是否为空,不为空就访问队头元素,将其左右孩子加入队列,在将其出队,依次进行下去,直到队列为空
代码实现如下
2.层序遍历变式1
题目如下
思路:之前是访问每个结点就判一次空,现在我们处理完一层之后再判一次空,引入count来计数队列中一层的个数
代码实现如下
3.层序遍历变式2
题目如下
思路:使用双端队列,或者将list偶数的逆序
代码如下