Learn
Practice
Newsletter
Resources
Mobile
New
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Delete Nodes And Return Forest
1
delNodes(Node(1), [3, 5])
Example 1
Example 2
Example 3
Custom
tree
=
[1, 2, 3, 4, 5, 6, 7]
,
toDelete
=
[3, 5]
delete
3
5
1
2
3
4
5
6
7
forest
delete the marked values, survivors form a forest
delete
3
5
1
2
3
4
5
6
7
forest
delete the marked values, survivors form a forest
delete
3
5
1
2
3
4
5
6
7
root
forest
1
2
not in deleteSet: stays attached
delete
3
5
∅
1
2
3
4
5
6
7
root
forest
1
null child: return null
delete
3
5
1
2
3
4
5
6
7
root
forest
1
5
is in deleteSet: mark for deletion
delete
3
5
∅
1
2
3
4
5
6
7
root
forest
1
null child: return null
delete
3
5
1
2
3
4
6
7
root
forest
1
3
is in deleteSet: mark for deletion
delete
3
5
∅
1
2
3
4
6
7
root
root
forest
1
6
null child: return null
delete
3
5
1
2
3
4
6
7
root
root
root
forest
1
6
7
no surviving parent: forest +=
7
delete
3
5
∅
1
2
3
4
6
7
root
root
root
forest
1
6
7
null child: return null
delete
3
5
1
2
4
6
7
root
root
root
forest
1
6
7
return [1, 6, 7]
Step:
Start: delete [3,5], the survivors split into a forest
0 / 38
Example 1
Example 2
Example 3
Custom
tree
=
[1, 2, 3, 4, 5, 6, 7]
,
toDelete
=
[3, 5]
0 / 38
Step:
Start: delete [3,5], the survivors split into a forest
1
delNodes(Node(1), [3, 5])