二叉树练习题

阅读量: 383 编辑

一个具有1025个结点的二叉树的高度h为( )

A. 11

B. 10

C. 11~1025之间

D. 10~1025之间

参考答案 C

如果是只有一个左子树或右子树的二叉树,那高度就是1025;

如果是一颗满二叉树,2^10 - 1 < 1025 < 2^11 - 1,所以是11~1025。

一颗具有5层的满二叉树的结点数是( )

A. 31

B. 32

C. 33

D. 16

参考答案 A

满二叉树的结点数是:2k - 1,代入k=5,求得 31

约定二叉树根结点高度是1。一棵树结点数为2021的二叉树最少有( )个叶子结点;一颗叶子结点数为2021的二叉树最小高度值是( )

A. 0,10

B. 1,11

C. 12,20

D. 21,32

参考答案 B

只有左子树,最少的叶子结点数就是1;

叶子结点数是2021,最小高度肯定是完全二叉树,结点数的范围是:2(k-1)-1 < n < 2k - 1 ,所以 k=11

如果根的高度为1,则具有61个结点的完全二叉树的高度为( )

A. 5

B. 6

C. 7

D. 8

参考答案 B

对于 k 层的完全二叉树,结点数的范围2(k-1)-1 < n < 2k - 1 ,所以 k=6

一颗结点数为2021的二叉树最多有( )个叶子结点

A. 1010

B. 1011

C. 1238

D. 2021

参考答案 B

完全二叉树结点数的范围2(k-1)-1 < n < 2k - 1,所以2021对应的 k=11(层)的完全二叉树;

所以k=10的时候,满二叉树总的结点数是 210-1 = 1023;第10层的叶子结点数是 2(10-1) = 512;

第11层的叶子数是 2021-1023 = 998;

第10层剩下的叶子数是 512 - (998/2) = 13;

所以,总的叶子结点数是 998 + 13 = 1011;

已知一颗二叉树有10个结点,则其中至多有( )个结点有2个子结点

A. 4

B. 5

C. 6

D. 7

参考答案 A

求至多,按满二叉树进行构造。

爱码岛编程公众号
试卷资料
爱码岛编程小程序
在线刷题
苏ICP备13052010号
©2023 南京匠成信息科技有限公司