主题:关于二叉树
smartq
[专家分:80] 发布于 2005-10-04 10:56:00
如果已知前序和中序怎样求后续
回复列表 (共7个回复)
沙发
阿Ben [专家分:2200] 发布于 2005-10-04 17:14:00
是啊,我刚想发帖求助,想不到有人捷足先登了!
板凳
mythjoker [专家分:400] 发布于 2005-10-04 17:24:00
根据教程的算法:
在中序中找根(即前序的第一个),然后递归做.在只剩下一个字符时输出(就是后序).
另一问题:怎么根据前,中或后,中构造一个二叉树?
3 楼
lzl1403 [专家分:1670] 发布于 2005-10-04 21:11:00
中序的第一个数据即为这棵树的根,找到根后再在前序中找到根的位置,根前面的序列即为这棵树的左子树的前序序列,后面的为右子树的前序序列,再根据左右子树的前序序列找到相应的中序序列,分别递归计算左右子树就行了。知道这个原理再构造二叉树就不难了。
4 楼
阿Ben [专家分:2200] 发布于 2005-10-05 00:32:00
好!谢谢3楼!
5 楼
游侠UFO [专家分:1200] 发布于 2005-10-06 19:45:00
3楼的好像说错了把,应该是先序第一个是根,然后再去中序中找到根并划分左右子树
6 楼
林记 [专家分:1680] 发布于 2005-10-06 19:51:00
恩,应该是从先序中找根,
再对应到中序确定子树
7 楼
6yangweihua [专家分:180] 发布于 2005-10-07 09:12:00
二叉树的前序:先按前序的顺序写根---再按前序的顺序写二叉树的左子数---按前序的顺序写二叉树的右子数
中序:先按后序的顺序写二叉树的左子数--按后序的顺序写二叉树的根--按后序的顺序写二叉树的右子数
后序:先按后序的顺序写二叉树的左子数--按后序的顺序写二叉树的右子数--按后序的顺序写二叉树的根。
我来回复