题目要求:实现二叉树的层序遍历
思路:实现层序遍历使用队列即可。每个结点遍历结束后,将其左右孩子结点也放入队列。本道题返回的是一个二维数组,即需要将每一层分开,所以还需要size变量记录每层元素个数。注意,内层循环时不能用que.size(),弹出一个结点将孩子结点入队的时候que.size()也会发生变化,使得不知道本层到底有多少个结点
leetcode实战:
代码实现:
非递归算法:
递归算法:
题目要求:实现二叉树的层序遍历
思路:实现层序遍历使用队列即可。每个结点遍历结束后,将其左右孩子结点也放入队列。本道题返回的是一个二维数组,即需要将每一层分开,所以还需要size变量记录每层元素个数。注意,内层循环时不能用que.size(),弹出一个结点将孩子结点入队的时候que.size()也会发生变化,使得不知道本层到底有多少个结点
leetcode实战:
代码实现:
非递归算法:
递归算法: