How to Delete a Binary Tree
To delete a binary tree, you must delete all its nodes.
Important Rule:
Use Post-order Traversal (Left → Right → Root).
Why Post-order?
If you delete the root first, you lose access to its children. Therefore, delete left subtree, then right
subtree, then the node itself.
Pseudocode:
FUNCTION deleteTree(node)
IF node == NULL
RETURN
deleteTree([Link])
deleteTree([Link])
DELETE node
END FUNCTION
Example Tree:
A
/ \
B C
/ \
D E
Deletion Order: D → E → B → C → A
Time Complexity:
O(n) because every node is visited exactly once.