【树】单选题

本文详细解析了二叉树的前序和后序遍历关系,探讨了特定情况下二叉树的结构特点,包括单节点树和高度与节点数的关系,以及中序遍历的特殊情况。通过实例和图示解释了先序、中序和后序遍历的区别,并提供了转换二叉树结构的线索。
摘要由CSDN通过智能技术生成

4-1

某二叉树的前序和后序遍历序列正好相反,则该二叉树一定是

A.空或只有一个结点
B.高度等于其结点数
C.任一结点无左孩子
D.任一结点无右孩子

前序遍历:中左右
后序遍历:左右中

正好相反,有两种情况:
①都没有右孩子 中左 左中
②都没有左孩子 中右 右中
所以每行只有一个结点,高度等于其结点数。

4-2

已知一棵二叉树的先序遍历结果是ABC,则以下哪个序列是不可能的中序遍历结果:

A.ABC
B.BAC
C.CBA
D.CAB

请添加图片描述

4-3

如果二叉树的后序遍历结果是FDEBGCA,中序遍历结果是FDBEACG,那么该二叉树的前序遍历结果是什么?

A.ABCDEFG
B.ABDFEGC
C.ABDFECG
D.ABDEFCG

后序:左右根
中序:左根右请添加图片描述

4-4

给定二叉树如下图所示。设N代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。若遍历后的结点序列为3、1、7、5、6、2、4,则其遍历方式是:
在这里插入图片描述
A.NRL
B.RNL
C.LRN
D.RLN

很简单,看图能看出来。。。

4-5

在下述结论中,正确的是:

①只有一个结点的二叉树的度为0;

②二叉树的度为2;

③二叉树的左右子树可任意交换;

④深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树。

A.①④
B.②④
C.①②③
D.②③④

②空二叉树没有度
③交换之后就不是同一个二叉树了

4-6

任何一棵二叉树的叶结点在先序、中序和后序遍历序列中的相对次序

A.发生改变
B.不发生改变
C.不能确定
D.以上都不对

叶子结点的相对次序是不发生改变的,因为发生改变的只有根结点
MLR LMR LRM

4-7

按照二叉树的定义,具有3个结点的二叉树有几种?
A.3
B.4
C.5
D.6
请添加图片描述

4-8

下面的函数PreOrderPrintLeaves(BinTree BT)按前序遍历的顺序打印出二叉树BT的所有叶子结点。则下列哪条表达式应被填在空中?

void PreOrderPrintLeaves( BinTree BT ) { if (BT) {
if (___________________) printf(" %d", BT->Data);
PreOrderPrintLeaves( BT->Left );
PreOrderPrintLeaves( BT->Right ); } }

A.BT->Data != 0
B.!BT->Right
C.!BT->Left
D.!(BT->Left || BT->Right)

4-9

要使一棵非空二叉树的先序序列与中序序列相同,其所有非叶结点须满足的条件是:

A.只有左子树
B.只有右子树
C.结点的度均为1
D.结点的度均为2

ML R
L MR

4-10

若将一棵树 T 转化为对应的二叉树 BT,则下列对 BT 的遍历中,其遍历序列与 T 的后根遍历序列相同的是:

A.先序遍历
B.中序遍历
C.后序遍历
D.按层遍历

需要知道如何将一棵树转化为二叉树:对于每一个结点,第一个孩子结点放左子树,其余孩子结点(即第一个孩子结点的兄弟结点)放在第一个孩子结点的右子树,其余的孩子结点再依次放在右子树的右子树,依次类推。
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值