原本的字串是整棵Tree,我們可先找到這個Tree的Root,再將其分為左右Sub Tree,一直遞迴下去直到Sub Tree只剩一個元素。
具體做法是:
- 先用Preorder String找出Root(P_root),再透過P_root找到Inorder String的Root(I_root)
- 然後用I_root分別找出左右Sub Tree在Inorder String的左右界(會有4個index:左子樹的左右界和右子樹的左右界),再用剛才4個index的結果來找出左右子樹在Preoder String的左右界(一樣有4個index)。
- 依照Post Order的順序:
- 先遞迴左子樹
- 再遞迴右子樹
- 輸出Root
底下有附詳細註解的Code:
沒有留言:
張貼留言