Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Binary Tree Vertical Order Traversal
Bookmark
Input
Example 1
Left-Heavy
Small
Four Levels
Custom
tree
=
[3, 9, 20, null, null, 15, 7]
col
-1
0
1
2
3
9
20
15
7
map
queue
result
group nodes by vertical column
col
-1
0
1
2
3
9
20
15
7
map
queue
result
group nodes by vertical column
col
-1
0
1
2
3
9
20
15
7
map
queue
result
dequeue
3
at col
0
col
-1
0
1
2
3
9
20
15
7
map
[3]
queue
9
-1
front
result
enqueue
9
col = 0 - 1 =
-1
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3]
queue
20
1
front
result
column_map[-1] =
[9]
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3]
[20]
queue
result
column_map[1] =
[20]
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3]
[20]
queue
15
0
7
2
front
result
enqueue
7
col = 1 + 1 =
2
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3,15]
[20]
queue
7
2
front
result
column_map[0] =
[3, 15]
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3,15]
[20]
[7]
queue
result
[9]
result +=
[9]
col -1
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3,15]
[20]
[7]
queue
result
[9]
[3, 15]
[20]
result +=
[20]
col 1
col
-1
0
1
2
3
9
20
15
7
map
[9]
[3,15]
[20]
[7]
queue
result
[9]
[3, 15]
[20]
[7]
return [[9], [3, 15], [20], [7]]
algo
master
.
io
Step:
Start: group nodes by vertical column with BFS
0 / 20
Input
Example 1
Left-Heavy
Small
Four Levels
Custom
tree
=
[3, 9, 20, null, null, 15, 7]
0 / 20
algo
master
.
io
Step:
Start: group nodes by vertical column with BFS