假设一棵二叉树的后序遍历序列为 DGJHEBIFCA,中序遍历序列为 DBGEHJACIF,则其前序遍历序列为()。
A. ABCDEFGHIJ
B. ABDEGHJCFI
C. ABDEGJHCFI
D. ABDEGHJFIC
解题思路
1.通过后序遍历最后一位是书的根,我们推导出根为A。它的左子树有:DGJHEB,右子树有:IFC
然后IFC再次通过后序遍历求出A的右子为C,又根据后序遍历 “左右根” 的顺序知道了C的右子为F。
但因为中序遍历IF都在C的右边,所以I是F的左子树。 以此类推。
最后我们求出的前序遍历为 “ABDEGHJCFI” 选B