二叉树先知道后序和中序,求先序

论坛 期权论坛 期权     
矮墙   2018-4-26 13:42   5267   3
比如已知后序DABEC  中序DEBAC,求先序

请把结果和方法都告诉我
分享到 :
0 人收藏

3 个回复

倒序浏览
2#
yiye242  2级吧友 | 2018-4-30 02:32:00
后序DABEC 中序DEBAC
由后序最后一个字母知:整个树的开始结点为C;
由中序C的位置知:C前面的为结点C的左子树;C后面的为结点C的右子树;
所以经过第一次推理,C为根结点,DEBA为其左子树;
然后去掉C,考虑下面的左子树;
后序DABE 中序DEBA
由后序最后一个字母知:整个左子树的开始结点为E;
由中序E的位置知:E前面的为结点E的左子树;E后面的为结点E的右子树;
所以经过第一次推理,E为开始结点,D为E的左结点.BA为E的右结点.
然后去掉DE,考虑下面E的右子树;
后序AB 中序BA
易知:B为根结点,A为其右结点.
所以整个树为:C(E(D,B(,A)));
先序:CEDBA
3#
灬朋朋灬  2级吧友 | 2018-4-30 02:32:01
呵呵,又看到你问这种题,你学什么专业啊?最近是不是学《数据结构》这门课啊?我去年才学过
1楼和2楼的都回答的很正确
呵呵,这么多高手关注你一定能学好这门课的。加油!
4#
I_YOU_他  3级会员 | 2018-4-30 02:32:02
感觉最佳答案的B和A反了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP