已知先根次序和后根次序,如何画出相应该的树?

bluesea07 2005-05-09 02:49:10
先根次序:GFKDAIEBCHJ
后根次序:DIAEKFCJHBG
请说明是如何建立的?
...全文
3066 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
cao12m 2005-05-19
  • 打赏
  • 举报
回复
靠 知道先跟和后根 树是不确定的 是画不出来的~~~~~~必须知道中根 再加上先或者后才行晕~~~~~数据结构没学好
mostideal 2005-05-19
  • 打赏
  • 举报
回复
ding
liu_jun_ 2005-05-19
  • 打赏
  • 举报
回复
如果前提不是二叉就不要做了。
G
/ \
F B
/ / \
K C H
/ \ /
D A J
/ \
I E
树应该是这样的,而且
如果根据此题的
先根次序:GFKDAIEBCHJ
后根次序:DIAEKFCJHBG
将得不到树,而不是很多符合的树,不同意,你可以你可以把树画出来。
而且前面的给出的树进行便利也不符合题目的条件。
后根次序应该为:DAIEKFCJHBG
根据 先序,中序,后序中的两个次序,就可以确定一棵树。而且是唯一的。
因为不论先序,中序,后序,遍历,左子树,都先于右子树遍历。
所一只要找到树的根节点。就能确定树。
不同意
你可以根据
先根次序:GFKDAIEBCHJ
后根次序:DAIEKFCJHBG
给出不同于我给出的树。
还有个简单的:
先序:ABDEC
后序:DEBCA
树是: A
/ \
B C
/ \
D E
你可以给出其它树吗?
不要说,这个树太简单了,所以就能确定。
那么那棵树不是由根,左子树,右子树,组成的。
foochow 2005-05-19
  • 打赏
  • 举报
回复
学习ING
MagicCarmack 2005-05-19
  • 打赏
  • 举报
回复
不唯一

和知道中序和后序画前序差不多
zwzzj 2005-05-19
  • 打赏
  • 举报
回复
既然不唯一,那你画出来的就有多个了。
画出来的就没意思了。
bluesea07 2005-05-18
  • 打赏
  • 举报
回复
不唯一,也能画出可能的呀,应该怎么考虑?
zwzzj 2005-05-17
  • 打赏
  • 举报
回复
知道前序和后序根本就不能唯一确定一棵树.
caoxiangxiang2000 2005-05-17
  • 打赏
  • 举报
回复
这个题目看都不用看了,这个答案肯定不是唯一的,因为知道前序和后序根本就不能唯一确定一棵树,
你想分界线都没有怎么排序啊。还是把数据结构好好的看看吧。
bluesea07 2005-05-17
  • 打赏
  • 举报
回复
这道题是严蔚敏出的数据结构习题集中的题目P41 6.23
bluesea07 2005-05-16
  • 打赏
  • 举报
回复 1
不要求是二叉树,只要能画出树就行了,大家帮帮忙呀
fhvk 2005-05-13
  • 打赏
  • 举报
回复
agree with xinghui(星辉) ( )
{
只知道先序和后序怎么能能推出树来

只有中序和先序或者中序和后序才可以

不然只知道根节点,但是哪些是左子树哪些是右子树就不知道了
}
newercoming 2005-05-13
  • 打赏
  • 举报
回复
比如先序时1234
后序是4321的二叉树有8种比如:
1 1
\ /
2 2
/ /
3 3
\ /
4 4
lzwei3842 2005-05-13
  • 打赏
  • 举报
回复
学习
xinghui 2005-05-12
  • 打赏
  • 举报
回复
只知道先序和后序怎么能能推出树来

只有中序和先序或者中序和后序才可以

不然只知道根节点,但是哪些是左子树哪些是右子树就不知道了
bluesea07 2005-05-10
  • 打赏
  • 举报
回复
也就是当分到A时,I在A的前面该怎么办?
bluesea07 2005-05-10
  • 打赏
  • 举报
回复
大家帮帮忙呀
bluesea07 2005-05-09
  • 打赏
  • 举报
回复
能说明下DIAEK是怎么处理的吗?
zhousqy 2005-05-09
  • 打赏
  • 举报
回复
G
/ \
F B
/ / \
K C H
/ \ /
D E J
\
A
/
I

不论先根后根,左子树的结点总是出现在右子树结点的前面。
G为根树,先根次序时G后跟F,后根次序时F前有DIAEKF,故DIAEKF为G的左子树的结点,CJHB为G的右子树的结点。且左右子树的先根序为:FKDIAE,BCHJ。递归处理两子树即可搞定
-----------
说得很清楚。
先找到根,然后就一半一半来。
llmsn 2005-05-09
  • 打赏
  • 举报
回复
先根,你就先打印根结点,后根你就后面打印根结点就行了.
加载更多回复(1)

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧