(PTA)数据结构(作业)9、树的课堂练习

判断题

1、二叉树中至少存在一个度为2的结点。 F

二叉树是每个结点最多有2个孩子的树。

2、二叉树通常有顺序存储结构和链式存储结构。 T

3、二叉树中有双子女的父结点,在中序遍历中后继一定是其中一个子女结点。 F

中序遍历,左根右,当右子树还有子女结点的时候,父结点的后继是右子树的子女结点,即原父结点的子孙结点。

4、完全二叉树一定存在度为1的结点。 F

只有一个根节点也是完全二叉树,完全二叉树的定义仅仅是二叉树的编号跟满二叉树一一对应。

5、对于有N个结点的二叉树,其高度为log2n。 F

如果除了叶子结点都是一度的结点的话,高度为N,如果是完全二叉树,高度为{\color{Red} log_2n+1}

6、完全二叉树中,若一个结点没有左孩子,则它必是树叶。 T

7、二叉树只能用二叉链表表示。 F

二叉树不仅可以用二叉链表表示,也可以用顺序表表示。

8、度为二的树就是二叉树。 F

个人认为题目描述不好(很阴险),这种情况下错就只能错在度位2的树跟二叉树的区别是:是否区分左右子树,即应该是有序树。

即度为2的有序树才能使二叉树,树本身要区分有序树和无序树,而二叉树是有序树。

反过来,二叉树就是度为2的树也是错的,因为二叉树是每个结点最多有2个孩子的树,也可以是度为1的有序树,也可以是度为0的有序树。

(度为0似乎依旧有必要强调是有序,有序在这里应该是一种属性,而不是只看仅有一个根节点无法排序,或者说只有一个根节点无论怎么排序都是相同的结果,作为树的概念是要说是有序树的。个人想法)

9、一棵非空二叉树,若先序遍历与后序遍历的序列相反,则该二叉树所有结点均无左孩子。 F

根左右,左右根,没有左孩子,根右,右根;没有右孩子,根左,左根,所以可以是所有结点均无左孩子,也可以是所有结点均无右孩子。

10、一棵非空二叉树,若先序遍历与后序遍历的序列相反,则该二叉树只有一个叶子结点。 T

选择题

1、一棵非空二叉树,若先序遍历与中序遍历的序列相同,则该二叉树 ▁▁▁▁▁ 。

A.所有结点均无左孩子

B.所有结点均无右孩子

C.只有一个叶子结点

D.为任意二叉树

根左右和左根右遍历的序列相同,当然是没有左孩子,都是根右

2、一棵非空二叉树,若先序遍历与后序遍历的序列相反,则该二叉树 ▁▁▁▁▁ 。

A.所有结点均无左孩子

B.所有结点均无右孩子

C.只有一个叶子结点

D.为任意二叉树

根左右和左右根,遍历的序列相反,而这两种遍历方式都是左右的顺序遍历子节点,如果要相反就是只能有一个叶子结点

3、一棵有 1001 个结点的完全二叉树,其叶子结点数为 ▁▁▁▁▁ 。

A.250

B.254

C.500

D.501

若完全二叉树有2k个(偶数个)结点,则n_1 = 1,n_0 = k,n_2 =k - 1

若完全二叉树有2k-1个(奇数个)结点,则n_1 = 0,n_0 = k,n_2 = k - 1

4、若根节点为高度1,一棵具有 1025 个结点的二叉树的高度为 ▁▁▁▁▁ 。

A.10

B.11

C.11~1025 之间

D.10~1024 之间

他只说了有1025个结点,而没说是什么二叉树,直接一列往下也是二叉树,所以最高是1025,最低自然是完全二叉树,具有n个结点的完全二叉树的深度为log_{2}n + 1=10+1

5、在完全二叉树中,若一个结点是叶结点,则它没( )。

A.左子结点

B.右子结点

C.左子结点和右子结点

D.左子结点,右子结点和兄弟结点

叶子结点的定义:度为0的结点称为叶子或终端结点。

6、高度为8的完全二叉树至少有( )个叶子结点。

A.128

B.63

C.64

D.32

高度为8,最少是7层加1个,因为是完全二叉树,所以前七层是满的,有2^7 - 1个结点,再+1

7、一棵完全二叉树中有501个叶子节点,则至少有 ( ) 个节点

A.501

B.502

C.1001

D.1002

完全二叉树,若要有501个叶子结点,倒数第二层得是256个结点,即倒数第二层是第九层,前九层的结点数为511,第九层的结点数为256,此时叶子结点数为256,还需要245个叶子结点才够501个叶子结点,在下一层每增加两个结点,叶子结点数加1,所以最后一层有490个叶子结点,490+511=1001。

换种方法

若完全二叉树有2k个(偶数个)结点,则n_1 = 1,n_0 = k,n_2 =k - 1

若完全二叉树有2k-1个(奇数个)结点,则n_1 = 0,n_0 = k,n_2 = k - 1

之所以最少1001是因为它最后再增加一个依旧是501个叶子结点。

8、某二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树一定是( )

A.空或只有一个节点

B.完全二叉树

C.二叉排序树

D.高度等于其节点数

根左右,左右根,去掉左子树或者右子树,只有一个叶子结点,高度等于结点数

9、一棵二叉树的先序遍历序列为ABCDEF,中序遍历序列为CBAEDF,则后序遍历序列为( )

A.CBEFDA

B.FEDCBA

C.CBEDFA

D.不确定

确定二叉树之后,后序遍历正常找就行了,左子树右子树根节点的顺序

10、有关二叉树下列说法正确的是( )

A.二叉树的度为2

B.一棵二叉树的度可以小于2

C.二叉树中至少有一个结点的度为2

D.二叉树中任何一个结点的度都为2

11、以下说法错误的是( )

A.叶子结点是度为零的结点

B.分支结点是度大于零的结点

C.树的度就是树的深度

D.兄弟结点的双亲相同

树的度是树中每个结点的最大度数,且至少有一个结点的度数等于树的度

12、设某棵二叉树的中序遍历序列为DBEAC,先序遍历序列为ABDEC,则该二叉树的后序遍历序列是( )

A.DBFAC

B.CFDBA

C.DEBCA

D.DBEAC

参考第九题罢((用画图随便画的)

13、二叉树中度为1的结点个数为3,叶子个数为5,则该二叉树的结点总数为( )

A.8

B.12

C.13

D.14

二叉树中,叶子结点的数量 = 度为2的结点的数量+1

14、一棵完全二叉树上有2020个结点,其中度为2的结点的个数是( )

A.1010

B.1009

C.1011

D.以上都错

若完全二叉树有2k个(偶数个)结点,则n_1 = 1,n_0 = k,n_2 =k - 1

若完全二叉树有2k-1个(奇数个)结点,则n_1 = 0,n_0 = k,n_2 = k - 1

15、深度为6的完全二叉树最少有( )个结点。

A.6

B.31

C.32

D.以上都错

因为是完全二叉树,所以最少是五层满二叉树+1,总共有2^5-1+1

16、下面的两种说法中正确的是( )
(1) 任何一棵二叉树的叶子结点在三种遍历中的相对次序不变;
(2) 按二叉树定义,具有三个结点的二叉树共有6种。

A.(1)(2)

B.(1)

C.(2)

D.(1)、(2)都错

三种遍历中,叶子结点都是先左再右,所以相对次序都不变。

三个结点,深度为三的树有四种,深度为2的有一种,所以有五种。

17、对于先序遍历与中序遍历结果相同的二叉树为( )

A.一般二叉树

B.任一结点均无右孩子的二叉树

C.任一结点均无左子树的二叉树

D.以上都不是

根左右,左根右,所以是没有左,但是PTA里答案我猜是B,因为我选C是错的

18、关于二叉树的存储结构,以下说法错误的是( )

A.二叉树只有顺序存储结构

B.二叉树只有链式存储结构

C.二叉树既有顺序存储结构,又有链式存储结构

D.二叉树的链式存储结构中只有一个指针域

PTA答案是C,我不理解当时我怎么敢的。二叉树确实既有顺序存储结构和链式存储结构。

题目应该是”正确的是“。

19、以下二叉树的中序遍历序列是( )。

A.ABCDEGFH

B.CDBEAFGH

C.ABGCEFHD

D.DCEBFHGA

20、以下二叉树的后序遍历序列是( )。

A.DCEBFHGA

B.CDBEAFGH

C.ABCDEGFH

D.ABGCEFHD

填空题

1、观察下图所示的二叉树

先序遍历的序列为: FBEHCDAGI

后序遍历的序列为: ECHBAIGDF

中序遍历的序列为: EBHCFADIG

2、二叉树的遍历推理

已知二叉树的先序遍历序列为

DAGICJBFHE

中序遍历序列为

GACIDFBHJE

则后序遍历序列为

GCIAFHBEJD

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值