什么是树?什么时二叉树?二叉树有哪些遍历方式?

题目

什么是树?什么时二叉树?二叉树有哪些遍历方式?

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。这里,我们把由树转换得到的二叉树叫做这棵树对应的二叉树。结论(27)是正确的。

A.树的先根遍历序列与其对应的二叉树的先序遍历序列相同

B.树的后根遍历序列与其对应的二叉树的后序遍历序列相同

C.树的先根遍历序列与其对应的二叉树的中序遍历序列相同

D.以上都不对


正确答案:A
解析:本题考查树的遍历和树向二叉树的转换。树的遍历方法中的前序遍历是首先访问根结点,然后从左到右按前序遍历根结点的各棵子树;后序遍历是首先从左到右按后序遍历根结点的各棵子树,然后访问根结点。而二叉树的遍历方法中前序遍历是首先访问根结点,然后按前序遍历根结点的左子树,再按前序遍历根结点的右子树;后序遍历是首先按后序遍历根结点的左子树,然后按后序遍历根结点的右子树,再访问根结点;中序遍历是首先按中序遍历根结点的左子树,然后访问根结点,再按中序遍历根结点的右子树。树的转换思想是根据孩子的存储方式而来的,其步骤是:(1)在各兄弟结点之间用虚线相连;(2)对每个结点仅保留它与其最左一个孩子的连线,抹去该结点与其他孩子之间的连线;(3)把虚线改为实线从水平方向向下旋转45℃,成右斜下方向,原树中实线成左斜下方向。
  下面,我们来看一个例子,图A是一棵普通树,图B是其转换来的二叉树。

  图A的前序遍历为:A,B,E,C,F,H,G,D
  图A的后序遍历为:E,B,H,F,G,C,D,A
  图B的前序遍历为:A,B,E,C,F,H,G,D
  图B的中序遍历为:E,B,H,F,G,C,D,A
  图B的后序遍历为:E,H,G,F,D,C,B,A
  由此可见,树的前序遍历序列与其对应的二叉树的前序遍历序列相同。

第2题:

用二叉树的前序遍历和中序遍历可以导出二叉树的后序遍历。()


参考答案:错误

第3题:

● 已知一个二叉树的先序遍历序列为①、②、③、④、⑤,中序遍历序列为②、①、④、③、⑤,则该二叉树的后序遍历序列为 (57) 。对于任意一棵二叉树,叙述错误的是 (58) 。

(57)A. ②、③、①、⑤、④

B. ①、②、③、④、⑤

C. ②、④、⑤、③、①

D. ④、⑤、③、②、①

(58)A. 由其后序遍历序列和中序遍历序列可以构造该二叉树的先序遍历序列

B. 由其先序遍历序列和后序遍历序列可以构造该二叉树的中序遍历序列

C. 由其层序遍历序列和中序遍历序列可以构造该二叉树的先序遍历序列

D. 由其层序遍历序列和中序遍历序列不能构造该二叉树的后序遍历序列


正确答案:C,B
试题(57)、(58)分析
  本题考查数据结构基础知识。
  遍历运算是二叉树的基本运算,主要有先序、中序、后序和层序遍历。
  先序遍历的基本方法:对于非空二叉树,先访问根结点,然后先序遍历根的左子树,最后先序遍历根的右子树。因此,若已知某二叉树的先序遍历序列,则可直接得到其树根结点。
  中序遍历的基本方法:对于非空二叉树,先中序遍历根的左子树,然后访问根结点,最后中序遍历根的右子树。因此,若已知某二叉树的根结点,则一可根据中序遍历序列将该二叉树左右子树上的结点划分开。
  后序遍历的基本方法:对于非空二叉树,首先后序遍历根的左子树,接着后序遍历根的右子树,最后访问根结点。因此,若已知某二叉树的后序遍历序列,则可直接得到其树根结点。
  题中给出的先序遍历序列为①、②、③、④、⑤,可知树根结点是①,据此再结合中序遍历序列②、①、④、③、⑤,可知②是根结点①左子树上的结点,由于是左子树上唯一的一个结点,因此②是根结点①的左孩子。对于右子树上的结点④、③、⑤,因右子树的先序遍历序列为③、④、⑤,因此③是根结点①的右孩子。依此类推,可知④是结点③的左孩子,⑤是结点③的右孩子。该二叉树如下图所示。

 
  从二叉树的遍历过程可知,从先序遍历序列和后序遍历序列中无法将左子树和右子树上的结点区分开,因此,由某棵二叉树的先序遍历序列和后序遍历序列不能构造出该二叉树的中序遍历序列。
  层序遍历二叉树的方法:设二叉树的根结点所在层数为1,则层序遍历二叉树的操作定义为从树的根结点出发,首先访问第一层的结点(根结点),然后从左到右依次访问第二层上的结点,接着是第三层上的结点,依此类推,自上而下、自左至右逐层访问树中各层上的结点。

 

第4题:

关于森林的遍历有以下说法:

①森林的先序遍历等同于其对应的二叉树的先序遍历。

②森林的中序遍历等同于其对应的二叉树的中序遍历。

③森林的后序遍历等同于其对应的二叉树的后序遍历。

④森林的后序遍历等同于其对应的二叉树的中序遍历。

其中正确的是______。

A.①②③

B.①②

C.①④

D.②④


正确答案:B
解析:根据森林和二叉树的转换规则,以及树的遍历定义可以得出,说法①②正确。值得注意的是,森林无后序遍历的定义。另外,树的先序遍历和后序遍历分别对应该树转换成的二叉树的先序遍历和中序遍历。树没有中序遍历的定义,不要把森林和树跟二叉树遍历的对应关系搞混了。

第5题:

如果把由数转换得到的二叉树叫做这棵树对应的二叉树,下面结论中正确的是(11)。

A.树的先根遍历与其对应的二叉树的先根遍历相同

B.树的后根遍历与其对应的二叉树的后根遍历相同

C.树的先根遍历与其对应的二叉树的中根遍历相同

D.以上都不对


正确答案:A
解析:树的先根遍历与其对应的二叉树的先根遍历相同,树的后根遍历与其对应的二叉树的中根遍历相同。

第6题:

有下列二叉树,对此二叉树中序遍历的结果是( )。

A.ABCDEF

B.BDAECF

C.ABDCEF

D.ABCDFE


正确答案:B
解析: 对二叉树的中序遍历是指:首先遍历左子树,然后访问根结点,最后遍历右子树。在遍历左、右子树时,注意依旧按照“左子树-根结点-右子树”的顺序。

第7题:

二叉树的遍历方式有()

A先序遍历

B中序遍历

C后序遍历

D线索遍历


参考答案:ABC

第8题:

下面是对二叉树的叙述,其中错误的是 ( )

A.二叉树的遍历是指不重复地访问二叉树中的所有结点

B.二叉树的遍历允许重复地访问二叉树中的个别结点

C.在遍历二叉树的过程中,一般先遍历左子树,然后再遍历右子树

D.在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、中序遍历、后序遍历


正确答案:B
A和B矛盾,显然只能从二者之中选择。如果允许熏复,就无惟一性。所以二叉树的遍历是指不重复地访问二叉树中的所有结点。

第9题:

已知某二叉树的先序遍历序列是ABDCE,中序遍历序列是BDAEC,则该二叉树为______。

 


正确答案:C
解析:本题考查数据结构基础知识。
对二叉树进行先序遍历的过程是:若二叉树非空,则先访问根结点,然后先序遍历左子树,最后先序遍历右子树。因此,二叉树的先序遍历序列中,第一个元素是根结点。
  对二叉树进行中序遍历的过程是:若二叉树非空,则先中序遍历左子树,然后访问根结点,最后中序遍历右子树。因此,若在中序遍历序列中已找出二叉树的根结点,则根结点左边为左子树的中序遍历序列,右边是右子树的中序遍历序列。
  由此,根据先序序列确定根结点,根据中序序列划分左右子树,反复应用此原则,就可根据先序遍历序列和中序遍历序列恢复二叉树的结构。
  本题中,先序序列为ABDCE,因此A是树根结点,中序序列为BDAEC,因此BD是左子树上的结点,EC是右子树上的结点。根据先序遍历序列,可知B是左子树的根结点,C是右子树的根结点。在中序遍历序列BDAEC中,D在B之后,因此D是B的右孩子。同理,在中序遍历序列BDAEC中,E在C之前,因此E是C的左孩子。

第10题:

后序遍历序列与中序遍历序列相同的二叉树为(85),前序遍历序列与后序遍历序列相同的二叉树为(86)。

A.根结点无左子树的二叉树

B.根结点无右子树的二叉树

C.只有根结点的二叉树或非叶子结点只有左子树的二叉树

D.只有根结点的二叉树或非叶子结点只有右子树的二叉树


正确答案:C

更多相关问题