Introduction
Zigzag Traversal means:
- traversing binary tree
- level by level
- alternating directions
Traversal Pattern:
- first level → left to right
- second level → right to left
- third level → left to right
Example:
1
/ \
2 3
/ \ / \
4 5 6 7
Zigzag Traversal:
1
3 24 5 6 7
Explanation:
Traversal direction changes after every level. This problem is one of the most important applications of:
BFS Traversal Constraints
1 <= Number of Nodes <= 10^5Approach : Queue Based BFS Solution
Explanations:
Explanation:
The idea is:
- use queue for BFS
- reverse direction alternately
Steps:
- Push root into queue.
- Process one level.
- Store level values.
- Reverse level if needed.
- Push child nodes.
- Toggle traversal direction.
This approach:
- uses queue
- performs BFS traversal
- alternates traversal order
Dry Run
Level 1:
1
Direction:
Left → Right
Level 2:
2 3
Reverse:
3 2
Level 3:
4 5 6 7
Direction:
Left → Right
Output:1 3 2 4 5 6 7
Practice :