按照二叉树的递归定义,对二叉树遍历的常用算法有()、()、()三种。

题目
按照二叉树的递归定义,对二叉树遍历的常用算法有()、()、()三种。
参考答案和解析
先序;中序;后序
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

A.先序遍历

B.中序遍历

C.后序遍历

D.层序遍历


参考答案:D,A

第2题:

实现任意二叉树的后序遍历的非递归算法用栈结构,最佳方案是二叉树采用______存储结构。

A.二叉链表

B.顺序存储结构

C.三又链表

D.广义表存储结构


正确答案:C
解析:二叉树的存储有:顺序存储、二叉链表、三叉链表。
  遍历算法有:先序、中序和后序。所谓先后是针对访问根节点与访问子节点的相对顺序而言的。另外,还有层序遍历。
  对于后序遍历的非递归算法,用栈实现,用三叉链表是比较好的。

第3题:

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

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

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

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

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


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

第4题:

欲实现任意二叉树的后序遍历的非递归算法而不必使用栈,最佳方案是二叉树采用()存储结构。

  • A、 三叉链表
  • B、 广义表
  • C、 二叉链表
  • D、 顺序

正确答案:A

第5题:

二叉树的遍历分为三种,它们是前序遍历、__________遍历和后序遍历。


正确答案:
中序 【解析】二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树:并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历右子树,然后访问根结点,最后遍历左子树;并且遍历左、右子树时,仍然先遍历右子树,然后访问根结点,最后遍历左子树。

第6题:

二叉树的遍历可以分为三种:前序遍历、_____遍历和后序遍历。


正确答案:
中序 【解析】二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。 前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。 中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。 后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历右子树,然后访问根结点,最后遍历左子树;并且遍历左、右子树时,仍然先遍历右子树,然后访问根结点,最后遍历左子树。

第7题:

对于任意非空二叉树,要设计出其后序遍历的非递归算法而不使用堆栈结构,最合适的方法是对该二叉树采用(43)存储结构。

A.三叉链表

B.二叉链表

C.顺序

D.索引


正确答案:A
解析:若二叉树采用二叉链表结构,则链表中只有孩子结点的地址,而无双亲结点的地址,而遍历过程中又需要结点的双亲结点的地址,为此,遍历操作设置一个堆栈来达到这个目的。如果不设置堆栈,则需要采用三叉链表结构,因为三叉链表中除了孩子结点的地址以外,还保存了结点的双亲结点的地址,故选择A。

第8题:

按照二叉树的递归定义,对二叉树遍历的常用算法有深度优先遍历和深度优先遍两种方法。()

此题为判断题(对,错)。


标准答案:错

第9题:

不使用递归,也可以实现二叉树的前序、中序及后序遍历。


正确答案:正确

第10题:

二叉树的定义是个递归定义。


正确答案:正确

更多相关问题