Binary Tree Zigzag Level Order Traversal 题解

题目来源:Binary Tree Zigzag Level Order Traversal II

>

Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Given binary tree {3,9,20,#,#,15,7},
    3
   / \
  9  20
    /  \
   15   7
return its zigzag level order traversal as:
[
  [3],
  [20,9],
  [15,7]
]

解题思路:

跟前面的题Binary Tree Level Order Traversal 以及Binary Tree Level Order Traversal II。 区别就是这个将第偶数层的结果reverse一下。 这里就只列了其中一种代码了。

常规方法, 两个queue交替

参见Binary Tree Level Order Traversal

单queue+隔板

前面word ladder ii就提到过bfs,用隔板将各层之间隔离出来。只用一个queue就能知道某层是否已经遍历完毕。

递归

参见Binary Tree Level Order Traversal

Last updated

Was this helpful?