第6章-树和二叉树

上传人:M****1 文档编号:472676605 上传时间:2023-03-11 格式:DOC 页数:8 大小:73.50KB
返回 下载 相关 举报
第6章-树和二叉树_第1页
第1页 / 共8页
第6章-树和二叉树_第2页
第2页 / 共8页
第6章-树和二叉树_第3页
第3页 / 共8页
第6章-树和二叉树_第4页
第4页 / 共8页
第6章-树和二叉树_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《第6章-树和二叉树》由会员分享,可在线阅读,更多相关《第6章-树和二叉树(8页珍藏版)》请在金锄头文库上搜索。

1、第六章 树和二叉树一、单项选择题1. 在一棵度为3的树中,度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为( )个。A. 4B. 5C. 6D. 72. 假设在一棵二叉树中,双分支结点数为15,单分支结点数为30个,则叶子结点数为( )个。A. 15B. 16C. 17D. 473. 假定一棵三叉树的结点数为50,则它的最小高度为( )。A. 3 B. 4C. 5D. 64. 在一棵二叉树上第4层的结点数最多为( )。A. 2B. 4 C. 6D. 85. 用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组中R1.n,结点Ri若有左孩子,其左孩子的编号为

2、结点( )。A. R2i+1B. R2iC. Ri/2D. R2i-16. 由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )。A. 24B. 48C. 72D. 537. 线索二叉树是一种( )结构。A. 逻辑 B. 逻辑和存储C. 物理 D. 线性8. 线索二叉树中,结点p没有左子树的充要条件是( )。A. p-lc=NULL B. p-ltag=1 C. p-ltag=1 且p-lc=NULL D. 以上都不对9. 设n , m 为一棵二叉树上的两个结点,在中序遍历序列中n在m前的条件是( )。 A. n在m右方 B. n在m 左方 C. n是m的祖先 D

3、. n是m的子孙10. 如果F是由有序树T转换而来的二叉树,那么T中结点的前序就是F中结点的( )。A. 中序B. 前序C. 后序D. 层次序11. 欲实现任意二叉树的后序遍历的非递归算法而不必使用栈,最佳方案是二叉树采用( )存储结构。A. 三叉链表B. 广义表C. 二叉链表 D. 顺序12. 下面叙述正确的是( )。A. 二叉树是特殊的树B. 二叉树等价于度为2的树C. 完全二叉树必为满二叉树D. 二叉树的左右子树有次序之分13. 任何一棵二叉树的叶子结点在先序、中序和后序遍历序列中的相对次序( )。A. 不发生改变 B. 发生改变C. 不能确定 D. 以上都不对14. 已知一棵完全二叉树

4、的结点总数为9个,则最后一层的结点数为( )。A. 1 B. 2C. 3D. 415. 根据先序序列ABDC和中序序列DBAC确定对应的二叉树,该二叉树( )。A. 是完全二叉树 B. 不是完全二叉树C. 是满二叉树D. 不是满二叉树二、判断题1. 二叉树中每个结点的度不能超过2,所以二叉树是一种特殊的树。()2. 二叉树的前序遍历中,任意结点均处在其子女结点之前。()3. 线索二叉树是一种逻辑结构。()4. 哈夫曼树的总结点个数(多于1时)不能为偶数。()5. 由二叉树的先序序列和后序序列可以唯一确定一颗二叉树。()6. 树的后序遍历与其对应的二叉树的后序遍历序列相同。()7. 根据任意一种

5、遍历序列即可唯一确定对应的二叉树。()8. 满二叉树也是完全二叉树。()9. 哈夫曼树一定是完全二叉树。()10. 树的子树是无序的。()三、填空题1. 假定一棵树的广义表表示为A(B(E),C(F(H,I,J),G),D),则该树的度为_,树的深度为_,终端结点的个数为_,单分支结点的个数为_,双分支结点的个数为_,三分支结点的个数为_,C结点的双亲结点为_,其孩子结点为_和_结点。2. 设F是一个森林,B是由F转换得到的二叉树,F中有n个非终端结点,则B中右指针域为空的结点有_个。3. 对于一个有n个结点的二叉树,当它为一棵_二叉树时具有最小高度,即为_,当它为一棵单支树具有_高度,即为_

6、。4. 由带权为3,9,6,2,5的5个叶子结点构成一棵哈夫曼树,则带权路径长度为_。5. 在一棵二叉排序树上按_遍历得到的结点序列是一个有序序列。6. 对于一棵具有n个结点的二叉树,当进行链接存储时,其二叉链表中的指针域的总数为_个,其中_个用于链接孩子结点,_个空闲着。7. 在一棵二叉树中,度为0的结点个数为n0,度为2的结点个数为n2,则n0=_。8. 一棵深度为k的满二叉树的结点总数为_,一棵深度为k的完全二叉树的结点总数的最小值为_,最大值为_。9. 由三个结点构成的二叉树,共有_种不同的形态。10. 设高度为h的二叉树中只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为_

7、。11. 一棵含有n个结点的k叉树,_形态达到最大深度,_形态达到最小深度。12. 对于一棵具有n个结点的二叉树,若一个结点的编号为i(1in),则它的左孩子结点的编号为_,右孩子结点的编号为_,双亲结点的编号为_。13. 对于一棵具有n个结点的二叉树,采用二叉链表存储时,链表中指针域的总数为_个,其中_个用于链接孩子结点,_个空闲着。14. 哈夫曼树是指_的二叉树。15. 空树是指_,最小的树是指_。16. 二叉树的链式存储结构有_和_两种。17. 三叉链表比二叉链表多一个指向_的指针域。18. 线索是指_。19. 线索链表中的rtag域值为_时,表示该结点无右孩子,此时_域为指向该结点后继

8、线索的指针。20. 本节中我们学习的树的存储结构有_、_和_。四、应用题1. 已知一棵树边的集合为,请画出这棵树,并回答下列问题:(1)哪个是根结点?(2)哪些是叶子结点?(3)哪个是结点g的双亲?(4)哪些是结点g的祖先?(5)哪些是结点g的孩子?(6)哪些是结点e的孩子?(7)哪些是结点e的兄弟?哪些是结点f的兄弟?(8)结点b和n的层次号分别是什么?(9)树的深度是多少?(10)以结点c为根的子树深度是多少?2. 已知用一维数组存放的一棵完全二叉树:ABCDEFGHIJKL,写出该二叉树的先序、中序和后序遍历序列。3. 一棵深度为H的满k叉树有如下性质:第H层上的结点都是叶子结点,其余各

9、层上每个结点都有k棵非空子树,如果按层次自上至下,从左到右顺序从1开始对全部结点编号,回答下列问题:(1)各层的结点数目是多少?(2)编号为n的结点的父结点如果存在,编号是多少?(3)编号为n的结点的第i个孩子结点如果存在,编号是多少?(4)编号为n的结点有右兄弟的条件是什么?其右兄弟的编号是多少?4. 找出所有满足下列条件的二叉树:(1)它们在先序遍历和中序遍历时,得到的遍历序列相同;(2)它们在后序遍历和中序遍历时,得到的遍历序列相同;(3)它们在先序遍历和后序遍历时,得到的遍历序列相同;5. 假设一棵二叉树的先序序列为EBADCFHGIKJ,中序序列为ABCDEFGHIJK,请写出该二叉

10、树的后序遍历序列。6给定集合15,3,14,2,6,9,16,17(1)用表示外部结点,用表示内部结点,构造相应的huffman树:(2)计算它的带权路径长度:(3)写出它的huffman编码:7.假设用于通信的电文由字符集a,b,c,d,e,f,g中的字母构成。它们在电文中出现的频度分别为0.31,0.16,0.10,0.08,0.11,0.20,0.04, 1) 为这7个字母设计哈夫曼编码;2)对这7个字母进行等长编码,至少需要几位二进制数?哈夫曼编码比等长编码使电文总长压缩多少?五、算法设计题1. 给定一棵用二叉链表表示的二叉树,其中的指针t指向根结点,试写出从根开始,按层次遍历二叉树的

11、算法,同层的结点按从左至右的次序访问。2. 给定一棵二叉树,用二叉链表表示,其根指针为t,试写出求该二叉树中结点n的双亲结点的算法。若没有结点n或者该结点没有双亲结点,分别输出相应的信息;若结点n有双亲,输出其双亲的值。3. 实现二叉树的深度,二叉树采用二叉链表来存储。第六章 树和二叉树一、单项选择题1. C 2. B 3. C 4. D 5. B 6. D 7. C 8. B 9. B 10. B 11. A 12. D 13. A 14. B 15. A二、判断题1. 2. 3. 4. 5. 6. 7. 8. 9. 10.三、填空题1. 3,4,6,1,1,2,A,F,G2. n+13.

12、完全,最大,n4. 555. 中序6. 2n,n-1,n+17. n2+18. 2k-1,2k-1,2k-19. 510. 2h-111. 单支树,完全二叉树12. 2i,2i+1,i/2(或i/2)13. 2n,n-1,n+114. 带权路径长度最小15. 结点数为0,只有一个根结点的树16. 二叉链表,三叉链表17. 双亲结点18. 指向结点前驱和后继信息的指针19. 1,RChild20. 孩子表示法,双亲表示法,长子兄弟表示法四、应用题1. 解答:abcdegfhimnjki图5-15根据给定的边确定的树如图5-15所示。其中根结点为a;叶子结点有:d、m、n、j、k、f、l;c是结点g的双亲;a、c是结点g的祖先;j、k是结点g的孩子;m、n是结点e的子孙;e是结点d的兄弟;g、h是结点f的兄弟;结点b和n的层次号分别是2和5;树的深度为5。2. 解答:先序序列:ABDHIEJKCFLG中序序列:HDIBJEKALFCG后序序列:HIDJKEBLFGCA3. 解答:(1)第i层上的结点数目是mi-1。(2)编号为n的结点的父结点如果存在,编号是(n-2)/m)+1。(3)编号为n的结点的第i个孩子结点如果存在,编号是(n-1)*m+i+1。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号