Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Populating Next Right Pointers in Each Node
Bookmark
BFS Queue
DFS
Iterative O(1)
Input
Perfect Tree (depth 3)
Perfect Tree (depth 2)
Perfect Tree (depth 4)
Custom
tree
=
[1, 2, 3, 4, 5, 6, 7]
1
2
3
4
5
6
7
L0
L1
L2
queue
connect each level, any tree shape
1
2
3
4
5
6
7
L0
L1
L2
queue
connect each level, any tree shape
1
2
3
4
5
6
7
current
L0
L1
L2
queue
current =
1
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
2
3
front
level 0 connected,
last.next = null
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
3
front
current =
2
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
3
4
5
front
enqueue
5
null
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
4
5
6
7
front
enqueue
7
null
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
5
6
7
front
current =
4
null
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
6
7
front
current =
5
null
null
1
2
3
4
5
6
7
current
L0
L1
L2
queue
7
front
6
.next =
7
null
null
null
1
2
3
4
5
6
7
L0
L1
L2
queue
return root
algo
master
.
io
Step:
Start: connect nodes level by level with BFS
0 / 25
Input
Perfect Tree (depth 3)
Perfect Tree (depth 2)
Perfect Tree (depth 4)
Custom
tree
=
[1, 2, 3, 4, 5, 6, 7]
0 / 25
algo
master
.
io
Step:
Start: connect nodes level by level with BFS