已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历是什么?

来源:百度知道 编辑:UC知道 时间:2024/05/31 23:36:44
我是一个vb的初学者,马上要考国家级二级。国家级等级考试里面涉及到的公共知识不是很懂,像这种数据结构的题就很让我头晕。希望各位高手帮忙解答一下,需要详细的讲解。非常感谢!
PS:不要用C语言的程序唬弄我。

先序遍历的第一个结点是根结点,所以A是根,然后在中序遍历中找到A,(DBGE)A(CHF),由中序遍历的定义知(DBGE)是左子树的中序遍历,(CHF)是右子树的中序遍历。然后在先序遍历中把左子树和右子树划开,A(BDEG)(CHF),所以B是左子树根,C是右子树根。然后继续在中序遍历中找到B和C,((D)B(GE))A(C(HF))。对于DBEG,B是根,D是左子树,EG是右子树的中序遍历,对于CHF,C是根,HF是右子树的中序遍历。因为仍然有没划分完的部分,所以继续看先序。对于BDEG,B是根已知,D是整个左子树已知,所以EG是右子树的先序遍历,E是右根,再对照中序可知G是E的左子树,CHF同理。

所以树的结构是A(B(D,E(G,)),C(,F(H,)))
把它画成图,后序遍历就是DGEBHFCA

虽然说起来很麻烦但是递归表达其实很简单的..

总之先序序列是用来确定根结点,中序序列是用来划分出左右子树。

我懂些数据结构,有这样的题.你要先了解前序、中序、后序遍历的基本性质,例如你的提问,前序中A在前、证明A是树的根,由此再看中序遍历A的位置,由此可知CHF在A的右端其余的在A的左端,依此类推。如果不会再发信息给我。祝你考试过关!

A
B C
D E F H
G
后序遍历就是DGEBHFCA

已知二叉树前序遍历和后序遍历如何求中序遍历? 已知二叉树T中结点的前序和中序遍历序列建立一棵二叉树 已知一棵二叉树的先序遍历序列和中序遍历序列,编写一个程序唯一确定一棵二叉树 一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,该二叉树的后序遍历是什么?请给出详细答案.谢 已知遍历一棵二叉树的三种序列的任意两种,如何画出二叉树 已知二叉树的先根遍历和中序遍历,求后序遍历的算法? 已知一二叉树前序遍历为ABDEGCFH,中序遍历为DBGEACHF,则该二叉树的后序列遍为什么? 已知二叉树的先序遍历顺序和后序遍历顺序,能否知道其中序遍历顺序? 数据结构,已知遍历反推二叉树 已知二叉树的前序和后序,能否写出中序遍历?