I understand pre-order, in-order, and post-order tree traversal algorithms just fine. (Reference). I understand a few uses: in-order for traversing binary search trees in order
As Henk Holterman pointed out, destroying a tree using manual memory management usually is a post-order traversal.
Pseudocode:
destroy(node) { if (node == null) return; destroy(node.left) destroy(node.right) // Post-order freeing of current node free(node) }