写出下列二叉树的先序、中序、后序序列

作者&投稿:卜矿 (若有异议请与网页底部的电邮联系)
请写出下面二叉树的前序,中序和后序遍历序列~

前序:ABDEGIHCF
中序:DBGIEHACF
后序:DIGHEBFCA

先序DLR,先父节点,然后左节点,右节点,abdegcfh,中序LDR,dbgeachf,后序lrd,dgebhfca,层次序列abcdefgh

嗯,这个问题我以前回答过了
凑合着看吧

很显然你还不懂的遍历一棵二叉树的原理
当你拿到一棵二叉树,无论它的形状如何的千奇百怪
我们都可以将它按照如下的方式划分

/ \
左子树 右子树
一棵有很多个节点的二叉树可以划分为以上的形式
也可以这么理解,只要是按以上形式组合的都可以称为是二叉树
一个仅仅只有根节点的二叉树也可以划分成以上的形式,只不过他的左右子树都为空罢了
所以,我们发现,二叉树的定义其实是一个递归定义的过程
大的二叉树是由小的二叉树构建而成的
所以,当我们考虑要遍历一棵二叉树时
也是首选递归的遍历
遍历二叉树
它的基本思想是先按照上面的形式把整棵二叉树划分为3部分
哪么接下来的工作就很简单了
我们只需要将这3部分都遍历一遍就可以了(这里用到了分而治之的思想)
而对于这3部分来说
根节点的遍历无疑是最方便的,直接访问就ok了
而对于左右子树呢?
我们不难发现,左右子树其实分别成为了两棵完整的树
他们拥有各自独立的根节点,左子树和右子树
对他们的遍历,很显然应该与刚才的遍历方法一致便可
(如果上面的都理解了,那么这个题就是小菜一碟了,如果觉得无法理解,可以按照下面的方法自己多分解几棵树)
对于这个题目,中序遍历这可二叉树
先看根节点
1
/ \
左子树 右子树
我们应该先遍历左子树
也就是下面这棵树
2
/ \
4 5
对于这棵树在进行中序遍历
我们应先遍历她的左子树
他只有一个根节点4,左右子树都为空
哪么遍历这个只有一个根节点的二叉树
先访问她的左子树,为空
返回
访问该树的根节点4
在访问右子树也为空
此时,这棵树已经被完全的遍历了
我们需要返回上一层也就是
2
/ \
4 5
这棵树
此时,她的左子树已经被访问完毕
根据中序遍历的规则
需要访问此树的根节点2
此时的访问顺序是4-2
访问了根节点
在访问右子树只有一个根节点的5(具体过程看4的访问)
5访问完毕
也就意味着
2
/ \
4 5
这棵树已经访问完了
需要返回上一层
也就是1为根的树
此时这棵树的左子树已经访问完毕
此时访问的顺序是4-2-5应该没有问题
接下来访问根节点1
在访问右子树
3
/ \
4 7
是不是觉得似曾相识???
她的访问应该跟
2
/ \
4 5
一致
哪么最终遍历的顺序也出来了
4-2-5-1-6-3-7

-----------------------------
花了10多分钟
希望对你有所帮助
顺便自己也复习下
呵呵

先序:1245367
中序:4251637
后序:4526731

先序:1245367
中序:4251637
后序:4526731

大工13秋数据结构在线作业答案
答:2. 对二叉树的结点从1开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采用( )次序的遍历实现编号。A. 先序 B. 中序 C. 后序 D. 从根开始按层次遍历 正确答案:C 3. 一棵非空的二叉树的先序遍历序列与后序...

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

写出该二叉树的先序,中序,后序遍历的结果
答:先序:abcdegf 中序:cbegdfa 后序:cgefdba

11.已知一颗二叉树如下图所示,试分别写出按中序、先序和后序遍历时所...
答:先序 a i d h b x p f r 中序 d i a x b p h f r 后序 d i x p h r f h a

在二叉树结点的先序序列、中序序列和后序序列中,所有叶子结点的先后顺序...
答:在二叉树的先序序列、中序序列和后序序列中,所有叶子节点的先后顺序是相同的。叶子节点是二叉树的最底层,它们不具有任何子节点。这意味着无论你从哪个方向遍历二叉树先序、中序或后序,叶子节点的顺序都是相同的。先序遍历的顺序是根节点-左子树-右子树,中序遍历的顺序是左子树-根节点-右子树...

一棵二叉树的先序、中序、后序序列如下,其中一部 分未标出,请构造出...
答:你的先序序列不少元素干嘛打那么多空格,结果是,先序 遍历为:ABCDEFGHIJK 中序遍历为:CBEDFAHJKIG 后续遍历 为:CEFDBKJIHGA.树状结构为:A / \ B G / \ / C D H / \ \ E F I / J \ K

已知二叉树如下图所示,请写出先序遍历,中序遍历和后序遍历序列
答:前序遍历BEFCGDH 中序遍历FEBGCHD 后序遍历FEGHDCB

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

已知二叉树的先序遍历序列为ABCDEFG,中序遍历序列为AHIFCJGDEBD,其后...
答:是B的左分支,而[中序]的C的前面有"HIF",后面有"JGD...",预计C会有左子树,也应该有右子树.二叉树示意图: A \ B / C / \ F D / / \ H G E \ / I J后序遍历序列 I H F J G E D C B A// C语言测试代码// 测试结果:/...

二叉树先知道后序和中序,求先序
答:由中序E的位置知:E前面的为结点E的左子树;E后面的为结点E的右子树;所以经过第一次推理,E为开始结点,D为E的左结点。BA为E的右结点。然后去掉DE,考虑下面E的右子树;后序AB 中序BA易知:B为根结点,A为其右结点;所以整个树为:C(E(D,B(,A)));先序:CEDBA。