问一道关于二级C叉树的题目

来源:百度知道 编辑:UC知道 时间:2024/06/23 19:50:27
若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的结点访问顺序是
A) bdgcefha
B) gdbecfha
C) bdgaechf
D) gdbehfca

需要详细的解答 谢谢
还是不太明白 能否再详细一点?
谢谢~~

先看前序:abdgcefh a是第一个跟节点
再在中序dgbaechf 左dgb a 右echf

再看前序: abdgcefh 第二个节点是b dg是b的左子树
再看前序:abdgcefh 第三个节点是d 则g是d的右子树
循环下去...

其实到这里就可以知道答案了,后序:则肯定是gd开头,ca结尾
答案是D

一个好方法:
首先你要知道在中序里面a字母两边是分开两边的树,a即根节点。

那么DGB是左子树,ECHF是右子树。参照前序里,是BDG 和 CEFH。
好了,现在只须分别把BDG和DGB当作一个新树的前序遍历和中序遍历。我们看出B是这个树的根节点,,,同样的方法,,往下剥,,就能把所有的搞出来。。。

需要指出的是:如果只知道 前+后,是不能推出 中 的。