Binary Tree Zigzag Level Order Traversal

IF
AlgoAxiomStaff Engineers
JSTS
Medium20 mins

Given the root of a binary tree, return the zigzag level order traversal of its nodes' values (i.e., from left to right, then right to left for the next level, and alternate between).

Examples

Example 1:

3920157

Input: root = [3, 9, 20, null, null, 15, 7]

Output: [[3], [20, 9], [15, 7]]

Explanation: Level 0 reads left to right: [3]. Level 1 reads right to left: [20, 9]. Level 2 reads left to right: [15, 7].

Example 2:

1

Input: root = [1]

Output: [[1]]

Example 3:

Input: root = []

Output: []

Constraints

  • The number of nodes in the tree is in the range [0, 2000]
  • -100 <= Node.val <= 100
Source: Tree Breadth-First Search pattern — AlgoAxiom
JavaScript
Test Case 1
root = [1, 2, 3]
Test Case 2
root = [1, 2, 3, 4, 5]
Idle