# Problem Definition

## Description

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).

Example:

Given binary tree

```plaintext
    3
   / \
  9  20
    /  \
   15   7
```

return

```plaintext
[
         [3],
         [20, 9],
         [15, 7]
]
```

## Notes

1. [Geeks for Geeks - ZigZag Tree Traversal](https://www.geeksforgeeks.org/zigzag-tree-traversal/)
1. [Geeks for Geeks - Level order traversal in spiral form](https://www.geeksforgeeks.org/level-order-traversal-in-spiral-form/)
1. [LeetCode discussion](https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/discuss/33815/My-accepted-JAVA-solution)