LeetCode 114. Flatten Binary Tree to Linked List
1 | class Solution { |
程序中DFS过程先一直向右走( flatten (root->right);),直到遇到空节点再一直向左走(flatten (root->left);),直到遇到空节点再处理节点本身,这是典型的R - L - V 顺序的后续遍历。 处理完node 的 右子树、左子树后 再处理node, 最后让prev指向node。
例如

- root指针一直向右走,直到走到节点6,它的rc为空,flatten(6->right) return, 于是运行下一句 flatten(6->left), 6的lc也为空, 于是return,这样6的右、左都处理完了, 开始设置6本身。 设置好后让prev指向6…后面以此类推。