早教吧作业答案频道 -->数学-->
已知一棵二叉树的中序序列和后序序列分别为c,b,a,e,d,h,g,j,i,f和c,b,e,h,j,i,g,f,d,a画出这棵二叉树,并写出其前序遍历序列
题目详情
已知一棵二叉树的中序序列和后序序列分别为c,b,a,e,d,h,g,j,i,f 和 c,b,e,h,j,i,g,f,d,a
画出这棵二叉树,并写出其前序遍历序列
画出这棵二叉树,并写出其前序遍历序列
▼优质解答
答案和解析
这个问题我答了几次,搜一下就有答案了:
很简单.这也是个递归过程.
知道后序,就能找到“根”,是最后一个节点.
知道“根”节点,就好办了,从中序中把根结点找到,它左边是左子树的中序,
右边是右子树的中序,知道这两子树的中序,就能从后序中,把左子序、右子树
找出来(据中序的左、右子树的结点数).
这样,根节点找出来了,左子数的后序、中序就分离出来了,右子数也分离出来了,
这个问题,就化成两个新树的问题.同样的办法如此,就是递归成两个子树的新问题.
如果用程序,一样用递归就做出来了.
如:后序中最后一个a就是根,从中序就能分出左右子树:
c b及 e d h g j i f 这是中序;
就可从后序分出左右子树:
cb 及 e h j i g f d
这个问题就变成了两个树的同样问题了.
左子树的中序c b,后序 c b
右子树的中序e d h g j i f 后序 e h j i g f d
就可推算出一颗整树 .
你就可用递归的办法写出程序.
很简单.这也是个递归过程.
知道后序,就能找到“根”,是最后一个节点.
知道“根”节点,就好办了,从中序中把根结点找到,它左边是左子树的中序,
右边是右子树的中序,知道这两子树的中序,就能从后序中,把左子序、右子树
找出来(据中序的左、右子树的结点数).
这样,根节点找出来了,左子数的后序、中序就分离出来了,右子数也分离出来了,
这个问题,就化成两个新树的问题.同样的办法如此,就是递归成两个子树的新问题.
如果用程序,一样用递归就做出来了.
如:后序中最后一个a就是根,从中序就能分出左右子树:
c b及 e d h g j i f 这是中序;
就可从后序分出左右子树:
cb 及 e h j i g f d
这个问题就变成了两个树的同样问题了.
左子树的中序c b,后序 c b
右子树的中序e d h g j i f 后序 e h j i g f d
就可推算出一颗整树 .
你就可用递归的办法写出程序.
看了 已知一棵二叉树的中序序列和后...的网友还看了以下:
若一棵二叉树结点的前序遍历序列是A、B、C,后序遍历序列是C、B、A,则该二叉树结点的中序遍历序列( 2020-05-24 …
每趟排序都从序列的未排好序的序列中挑选一个值最小(或最大)的元素,然后将其与未排好序的序列的 2020-05-26 …
写一个算法,判断依次读入的一个以@为结束符的字母序列,是否为形如“序列1&序列2”模式的字符序列. 2020-06-28 …
若一棵二叉树的前序遍历序列和后序遍历序列分别为1,2,3,4和4,3,2,1。则该二叉树的中序遍历 2020-07-10 …
设E表示由n阶单位矩阵第i行与第j行互换得到的初等矩阵,则,E(I,J)^2=.设E表示由n阶单位 2020-07-16 …
设一颗二叉树的先序、中序遍历序列分别为:先序遍历序列:ABDFCEGH,中序遍历序列:BFDAGEH 2020-12-05 …
电力系统故障时正序负序零序分量之间的关系1:电力系统故障时,故障点电压电流的正序、负序、零序分量之间 2020-12-05 …
数据结构已知一棵二叉树的先序、中序遍历序列如下,请构造出该二叉树并写出其后序遍历序列.先序序列:AB 2020-12-05 …
我正在编制程序,用两种方法实现二叉树的建立,并用递归算法实现二叉树的先序、中序、后序三种遍历。具体要 2020-12-05 …
英语向高人求教!写几句话.每句开头的第一个字母分别是“L,i,U,F,E,i,F,E,i,w,o,a 2020-12-15 …