1. 程式人生 > >已知二叉樹的中序序列為DBGEAFC,後序序列為DGEBFCA,給出對應的二叉樹

已知二叉樹的中序序列為DBGEAFC,後序序列為DGEBFCA,給出對應的二叉樹

面對這樣的問題時我們該怎麼解決?

今天寫資料結構題,發現了一道總是碰見問題的題在這裡我寫了一種求解方法我自己稱它為分層遞迴求解。

第一步通過觀察我們知道後序遍歷時最後一個是根節點A

在中序序列中A的左邊是左子樹右邊是右子樹

第二步我們來畫第一層為根節點的右子樹為A-C-F


第三步拆分左子樹

在中序序列中為DBGE(因為我們不知道左子樹中的樹結構無法直接看出來就把左子樹另外拆分出來看)在後序序列中為DGEB

第五步模仿第一步和第二步的做法來畫

這個時候我們可以得到左子樹的結構如下: