中级数据库系统工程师

中序遍历二又链表存储的二叉树时,一般要用堆栈;中序遍历检索二叉树时,也必须使用堆栈。

题目

中序遍历二又链表存储的二叉树时,一般要用堆栈;中序遍历检索二叉树时,也必须使用堆栈。

参考答案和解析
正确答案:正确
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

B. ①、②、③、④、⑤

C. ②、④、⑤、③、①

D. ④、⑤、③、②、①

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

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

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

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


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

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

 

第2题:

二叉树的遍历方式有()

A先序遍历

B中序遍历

C后序遍历

D线索遍历


参考答案:ABC

第3题:

中序遍历二又链表存储的二叉树时,一般要用堆栈;中序遍历检索二叉树时,也必须使用堆栈。

A.错误

B.正确


参考答案:B

第4题:

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

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

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

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

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

其中正确的是______。

A.①②③

B.①②

C.①④

D.②④


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

第5题:

图的广度优先遍历算法类似于二叉树的(),图的深度优先遍历算法类似于二叉树的()。

A.先序遍历

B.中序遍历

C.后序遍历

D.层序遍历


参考答案:D,A

第6题:

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


参考答案:错误

第7题:

图的广度优先遍历算法类似于二叉树的________。

A、先序遍历

B、中序遍历

C、后序遍历

D、层序遍历


参考答案:D

第8题:

采用邻接表存储的图的深度优先遍历算法类似于二叉树的()。

A.先序遍历

B.中序遍历

C.后序遍历

D.按层遍历


正确答案:A

第9题:

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

 


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

第10题:

若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的 ( )

A.层次遍历算法

B.前序遍历算法

C.中序遍历算法

D.后序遍历算法


正确答案:C

更多相关问题