根据二叉树的后序遍历和中序遍历还原二叉树解题方法

根据二叉树的后序遍历和中序遍历还原二叉树解题方法

ID:43493073

大小:218.86 KB

页数:5页

时间:2019-10-08

根据二叉树的后序遍历和中序遍历还原二叉树解题方法_第1页
根据二叉树的后序遍历和中序遍历还原二叉树解题方法_第2页
根据二叉树的后序遍历和中序遍历还原二叉树解题方法_第3页
根据二叉树的后序遍历和中序遍历还原二叉树解题方法_第4页
根据二叉树的后序遍历和中序遍历还原二叉树解题方法_第5页
资源描述:

《根据二叉树的后序遍历和中序遍历还原二叉树解题方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、【题目】假设一棵二叉树的后序遍历序列为DGJHEBIFCA,中序遍历序列为DBGEHJACIF,则其前序遍历序列为()。A.ABCDEFGHIJB.ABDEGHJCFIC.ABDEGHJFICD.ABDEGJHCFI由题,后序遍历的最后一个值为A,说明本二叉树以节点A为根节点(当然,答案中第一个节点都是A,也证明了这一点)下面给出整个分析过程【第一步】由后序遍历的最后一个节点可知本树根节点为【A】加上中序遍历的结果,得知以【A】为根节点时,中序遍历结果被【A】分为两部分【DBGEHJ】【A】【CIF】于是作出第一幅图如下【第二步】将已经

2、确定了的节点从后序遍历结果中分割出去即【DGJHEBIFC】---【A】此时,位于后序遍历结果中的最后一个值为【C】说明节点【C】是某棵子树的根节点又由于【第一步】中【C】处于右子树,因此得到,【C】是右子树的根节点于是回到中序遍历结果【DBGEHJ】【A】【CIF】中来,在【CIF】中,由于【C】是根节点,所以【IF】都是这棵子树的右子树,【CIF】子树没有左子树,于是得到下图【第三步】将已经确定了的节点从后序遍历中分割出去即【DGJHEBIF】---【CA】此时,位于后序遍历结果中的最后一个值为【F】说明节点【F】是某棵子树的根节点

3、又由于【第二步】中【F】处于右子树,因此得到,【F】是该右子树的根节点于是回到中序遍历结果【DBGEHJ】【A】【C】【IF】中来,在【IF】中,由于【F】是根节点,所以【I】是【IF】这棵子树的左子树,于是得到下图【第四步】将已经确定了的节点从后序遍历中分割出去即【DGJHEB】---【IFCA】此时,位于后序遍历结果中的最后一个值为【B】说明节点【B】是某棵子树的根节点又由于【第一步】中【B】处于【A】的左子树,因此得到,【B】是该左子树的根节点于是回到中序遍历结果【DBGEHJ】【A】【C】【F】【I】中来,根据【B】为根节点,可

4、以将中序遍历再次划分为【D】【B】【GEHJ】【A】【C】【F】【I】,于是得到下图【第五步】将已经确定了的节点从后序遍历中分割出去即【DGJHE】---【BIFCA】此时,位于后序遍历结果中的最后一个值为【E】说明节点【E】是某棵子树的根节点又由于【第四步】中【E】处于【B】的右子树,因此得到,【E】是该右子树的根节点于是回到中序遍历结果【D】【B】【GEHJ】【A】【C】【F】【I】中来,根据【B】为根节点,可以将中序遍历再次划分为【D】【B】【G】【E】【HJ】【A】【C】【F】【I】,于是得到下图【第六步】将已经确定了的节点从后

5、序遍历中分割出去即【DGJH】---【EBIFCA】此时,位于后序遍历结果中的最后一个值为【H】说明节点【H】是某棵子树的根节点又由于【第五步】中【H】处于【E】的右子树,因此得到,【H】是该右子树的根节点于是回到中序遍历结果【D】【B】【G】【E】【HJ】【A】【C】【F】【I】中来,根据【H】为根节点,可以将中序遍历再次划分为【D】【B】【G】【E】【H】【J】【A】【C】【F】【I】,于是得到下图至此,整棵二叉树已经还原现在对该二叉树迚行前序遍历便能得到我们想要的答案【B】

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。