順序:根 → 左子樹 → 右子樹
本質是深度優先搜索 (DFS),優先往深處走,走不下去再回溯處理右兄弟。
順序:左子樹 → 右子樹 → 根
根節點最後處理,適合「先處理孩子再處理父親」場景(如釋放記憶體、計算目錄大小)。
左子樹 → 根 → 右子樹。二叉搜索樹中序遍歷得遞增序列。
void preOrder(TreeNode root) {
if (root == null) return;
visit(root); // 根
preOrder(root.left); // 左
preOrder(root.right); // 右
}
void postOrder(TreeNode root) {
if (root == null) return;
postOrder(root.left); // 左
postOrder(root.right); // 右
visit(root); // 根
}