题目
题目描述
给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
示例 1:
输入:root = [3,9,20,null,null,15,7]
输出:[[3],[20,9],[15,7]]
示例 2:
输入:root = [1]
输出:[[1]]
示例 3:
输入:root = []
输出:[]
提示:
树中节点数目在范围 [0, 2000] 内
-100 <= Node.val <= 100
题解
为了实现二叉树的锯齿形层序遍历,我们可以使用广度优先搜索(BFS)的方法。具体来说,我们可以通过一个队列来逐层访问节点,并根据当前层次决定是从左到右还是从右到左添加节点值。下面是一个Python实现的例子:
def zigzagLevelOrder(root):