先序遍历,中序遍历,后序遍历中如何知道两者求整棵树

以知道后序遍历和中序遍历为例子

If the postorder traversal sequence of a binary tree is FDEBGCA, and its inorder traversal sequence is FDBEACG, then its preorder traversal sequence is:ABDFECG

首先看整个树,树的root在后序遍历中必然是最后被访问的

因此A为整棵树的root

再看中序遍历,可以知道在A左边的即为左子树,在A右边的即为右子树

所以FDBE为左子树,CG为右子树

再把FDBE放到后序遍历里看,发现B在最后,因此B是这个子树的root

再回到中序遍历,由于FD在B的左边、E在B的右边,所以FD为左子树、E为右子树

就这样操作下去,直到每个节点都只有一个为止

这样就可以画出整棵树

因此前序遍历即为ABDFECG

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SteelBasalt/article/details/49963005
个人分类: 数据结构基础
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭