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

作者&投稿:敞珍 (若有异议请与网页底部的电邮联系)
某二叉树的先序和后序遍历序列正好相反,则该二叉树一定是什么二叉树~

全部是左子树或 全部是右子树。 因为先序是 中前后,后续是 前后中。 如果两个子树都有孩子的话,那么按照上面的规定,就肯定不可能成立的,所以是特殊情况,只有一个孩子。

该二叉树为
A
/ \
B C
/ \
D E
/ \
F G
后序遍历是: BFDGECA

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

前序遍历的第一个节点为根节点,由前序遍历可知,A为根节点。中序遍历的根节点前面的节点均为左子树的节点,所以左子树上的节点为DBGE。去掉根节点和左子树节点,右子数节点为CHF。前序遍历的第二个节点为B,由2知B为左子树节点,所以B为左子树的根节点。

由前序遍历,DEG在B节点下面,由中序遍历,D是B的左节点,GE是B的右节点。由前序遍历,E是G的根节点,由中序遍历,G是E的左子节点。由前序遍历,C是二叉树的右根节点,由中序遍历,C不含左子节点,HF为C的右子节点。由前序遍历,F为H的根节点,由中序遍历,H为F的左子节点。

在二叉树中,求后序遍历,先左后右再根,即首先遍历左子树,然后遍历右子树,最后访问根结点。则该二叉树的后序遍历是DGEBHFCA。

扩展资料:

先序遍历2113的第一个结点是根结点,所以5261A是根,然后在中序遍历中4102找到A,(DBGE)A(CHF),由中序遍1653历的定义知(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同理。



后序:DGEBHFCA


一只一棵二叉树的先序遍历结果为abcdefghi,中序遍历结果为cbafegdhi...
左一定优先于右 ,所以根的位置有三种。根 左 右、左 根 右、左 右 根。分别称为先序遍历、中序遍历、后续遍历,子树也一样,到一个子树就遍历一次,按照遍历顺序写下去就好,尤其注意根特殊对待(只有一个所以只写一个)。后续遍历是:CBEFDA 依据前序遍历序列可确定根结点为A;再依据中序遍历...

为什么已知一棵二叉树的前序遍历和后序遍历序列,不能唯一确定这棵二叉树...
这是因为同样的前序遍历和后序遍历序列,可以对应不同的二叉树。例如:已知一棵二叉树的前序遍历和后序遍历序列分别为ABC和CBA,则以下四棵二叉树均符合要求:A A A A \\ \\ \/ \/ B B B B \\ \/ \/ \\ C C C C ...

一棵二叉树先序遍历为ABCDEF,中序为CBAEDF,问后序是什么
A \/ \\ B D \/ \/ \\ C E F 后序遍历应该为:CBEFDA 先序遍历可确定根结点为A,中序为CBAEDF,中序中A左边为左子树右边为右子树,依次类推,可得出树的结构`然后可以得出后序。我晕 专门为这去注册个账号回来就这么多人了 哈哈哈哈 牛人真多!!

一棵二叉树的先序遍历序列为ABCDEF,中序遍历序列为CBAEDF,则后序遍历...
先序列号为这个,那么在编辑的时候,可以先进行用顺序的方式,然后再进行。后序序列是CBA。根据前序,可以确定A为根,A在中序中的位置,可以确定CB为A的左子树上的结点,没有右子树。确定A之后,再看中序第二值为B,查看B在中序中的位置,C在B左边,确定C为B的左子树。

已知一棵二叉树的先序遍历序列为ABCDEFGHIJ,中序遍历序列为CBDEAFHIGJ...
先看先序,其第一个为树的根,先序遍历是先根再左子树最后右子树,第一个肯定是树的根,先画A,A再中序遍历中左右都有,说明A有左子树也有右子树。A \/ \\ 然后看先序第一个值是B,在中序中为A的前面,所以B是A的左子树 A \/ \\ B 继续看先序,接下来是C、D,C再中序中再B的...

一个二叉树的前序遍利为dabcefg,中序遍利为bacdfge后序遍利为什么
已知二叉树前序为dabcefg,中序为bacdfge,则可以还原二叉树如下:d a e b c f g 所以,后序为bcagfed 推导原理:根据二叉树的三种遍历规则:先:根左右 中:左根右 后:左右根 利用上述三种规则,结合递归思想去还原这棵二叉树。

一棵二叉树的先序遍历为ABDFCEGH,中序遍历为BFDAGEHC,画出这棵二叉树...
1、由先序遍历特征,根节点必在先序序列首部,可知根节点是A;由中序遍历特征,根节点必在中间,可以得到左子树子孙(BFD),右子树子孙(GEHC);2、继续可得子树B(先序BDF中序BFD)3、C(先序CEGH中序GEHC);4、重复上述步骤,即可唯一地确定一棵二叉树 ...

一棵二叉树的先序遍历次序为ABDGECFH,中序遍历次序为DGBEAFHC,则其后...
由先序遍历次序为ABDGECFH可知,二叉树的根为A;再由中序遍历次序为DGBEAFHC,可知根A的左子树中序遍历次序为DGBE,根A的右子树中序遍历次序为FHC;再看先序遍历次序ABDGECFH,可知根A的左子树先序遍历次序为BDGE,根A的右子树先序遍历次序为CFH;根据根A的左子树先序遍历次序为BDGE,中序遍历...

一棵二叉树的前序遍历结果是ABCEDF,中序遍历结果是CBAEDF,则其后序遍...
\/\/ 二叉树的"前序遍历"结果: A B C E D F\/\/ 二叉树的"中序遍历"结果: C B A E D F\/\/ 二叉树的"后序遍历"结果: C B F D E A\/\/ 2017-04-30#include "stdio.h"#include "stdlib.h"struct tree{ char data; struct tree *left; struct tree *right;};typedef stru...

一棵二叉树先序遍历为12463578,中序遍历为26413758
1 \/ \\ 2 3 \\ \\ 4 5 \/ \/ \\ 6 7 8 后序遍历为:64278531

同心县13728975861: 已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历是什么? -
包非妥奇: 已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历是DGEBHFCA. 前序遍历的第一个节点为根节点,由前序遍历可知,A为根节点.中序遍历的根节点前面的节点均为左子树的节点,所以左子树上...

同心县13728975861: 已知一棵二叉树前序遍历和中序遍历分别为ABCDEFGH和BGDHAECF,求后序遍历和二叉树图. -
包非妥奇:[答案] 看到前序 C 和中序的 C就对不上了,麻烦你确认下序列

同心县13728975861: 已知二叉树的前序和中序,构造该二叉树的方法是什么 -
包非妥奇: 以下面的例题为例进行讲解: 已知一棵二叉树的先序遍历序列和中序遍历序列分别是ABDCEF、BDAECF,求二叉树及后序遍历序列. 分析:先序遍历序列的第一个字符为根结点.对于中序遍历,根结点在中序遍历序列的中间,左边部分是根...

同心县13728975861: 已知二叉树的前序遍历和中序遍历,怎样得到它的后序 -
包非妥奇: 1. 已知二叉树的前序遍历和中序遍历就可以知道二叉树的形状,然后即可得到它的后序序列.(方法一) 2. 已知二叉树的前序遍历和中序遍历 步骤一:从前序遍历序列中找到根结点(首结点) 步骤二:然后从中序序列中找到该节点的左右两个中序序列,取出该结点放置到两序列之后. 步骤三:针对划分后的两个中序序列重复步骤一和步骤二,直到中序序列无法再次划分.此时得到的序列即为后序序列.(方法二)

同心县13728975861: 数据结构 已知一棵二叉树的前序遍历的结果序列是ABCDEFGHIJ,中序遍历的结果是 -
包非妥奇: 如果仅有“已知一棵二叉树的前序遍历的结果序列是ABCDEFGHIJ”,则中序遍历的结果是不能确定的.

同心县13728975861: 1、已知某二叉树的先序和中序遍历序列分别是: 先序:XYDEHCF 中序:DYHEXFC 画出这棵二叉树. -
包非妥奇: 这个是错的,中序遍历是左子树的节点和右子树的结点混乱了,比如XY是左子树的,而HE是右子树的,不可能出现YHEX的情况

同心县13728975861: 1. 已知一棵二叉树的中序遍历序列为CDBAEGF,前序遍历序列为ABCDEFG,问能否唯一确定一棵树,请画出.若给 -
包非妥奇: 图形不好画 A的左子树是C右子树是E C的左子树是B右子树是D E的右子树是F F的左子树是G前序为ACBDEFG

同心县13728975861: 已知二叉树的先序遍历序列和中序遍历序列,求层次遍历 跪求大牛!(C语言) -
包非妥奇: typedef struct Tree_node{int data;struct Tree_node *lchild;struct Tree_node *rchild; }NODE,*LINK; //按层遍历 void LevelShow(LINK root) {LINK queue[N+1],p;int front=0,rear=0; //队列首尾指针if(root==NULL){printf("树不存在,请创建...

同心县13728975861: 已知二叉树前序遍历和中序遍历分别为:ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为......? -
包非妥奇: DGEBHFCA A肯定是根节点然后看中序遍历 得到A的左孩子为DBGE右孩子为CHF,(因为A在它们中间)再先序得左孩子根节点为B(因为B在最前) 同理右孩子根节点为C,再得到中序中找B,B的左孩子为D右孩子为EG,从先序中可知E在F前所以E是根节点,在中序中G在E之前所以G是E的左孩子.同理右边的根据这个原理分析.

同心县13728975861: C++中二叉树的前序(后序、中序)遍历分别是什么意思?相应的树图怎么看? -
包非妥奇: 二叉树的遍历是指按照一定次序访问树中所有结点,并且每个节点仅被访问一次的过程. 1、先序遍历(前序) (1)访问根节点; (2)先序遍历左子树; (3)先序遍历右子树. 2、中序遍历 (1)中序遍历左子树; (2)访问根节点; (3...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网