【考研类试卷】计算机专业基础综合数据结构(树与二叉树)-试卷2及答案解析.doc
《【考研类试卷】计算机专业基础综合数据结构(树与二叉树)-试卷2及答案解析.doc》由会员分享,可在线阅读,更多相关《【考研类试卷】计算机专业基础综合数据结构(树与二叉树)-试卷2及答案解析.doc(10页珍藏版)》请在麦多课文档分享上搜索。
1、计算机专业基础综合数据结构(树与二叉树)-试卷 2 及答案解析(总分:64.00,做题时间:90 分钟)一、单项选择题(总题数:23,分数:46.00)1.单项选择题 1-40 小题。下列每题给出的四个选项中,只有一个选项是最符合题目要求的。(分数:2.00)_2.设树 T 的度为 4,其中度为 1、2、3 和 4 的结点个数分别为 4、1、1、1,则 T 中的叶子数为( )。(分数:2.00)A.10B.11C.9D.73.用下列元素序列(22,8,62,35,48)构造平衡二叉树,当插入( )时,会出现不平衡的现象。(分数:2.00)A.22B.35C.48D.624.下面的算法实现了将二
2、叉树中每一个结点的左右子树互换。addQ(Q,bt)为进队的函数,delQ(Q)为出队的函数,empty(Q)为判别队列是否为空的函数,空白处应填的内容是( )。 typedef struct node int data; struct node*lchild,*rchild; btnode; void exchange(btnode*bt) btnode*p,*q; if(bt) addQ(Q,bt); while(!EMPTY(Q) p=delQ(Q); q=p-rchild;p 一rchild=p 一lchild; ( (1) )=q; if(p-lchild) ( (2) ); if(
3、p-rchild)addQ(Q,p-rchild); (分数:2.00)A.p-lchild,delQ(Q,p 一lchild)B.p-rchild,delQ(Q,p-lchild)C.p-lchild,addQ(Q,p-lchild)D.p-rchild,addQ(Q,p-lchild)5.已知有一棵二叉树,其高度为 n,并且有且只有 n 个结点,那么二叉树的树形有( )种。(分数:2.00)A.nlog 2 nB.2 n+1C.2n 一 1D.2 n-16.已知二叉排序树如下图所示,下列序列构造此二叉排序树不正确的是( )。 (分数:2.00)A.(105,85,90,65,120,110
4、,138)B.(105,120,1 10,138,85,65,90)C.(105,65,85,90,120,110,138)D.(105,85,65,90,120,138,110)7.已知某平衡二叉树含有在 15 个结点,25 为其中的一个结点,如果在此平衡二叉树上查找关键字为 25的结点,下列比较的次序合理的是( )。(分数:2.00)A.29,35B.35,45,25C.45,15,35,25D.60,30,50,40,38,368.利用逐点插入建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,要查找元素 30 要进行元素间的比较次数是( )。(分
5、数:2.00)A.4B.5C.6D.79.构建一个哈夫曼树,如果给定权值的个数为 n,那么哈夫曼树的结点总数为( )。(分数:2.00)A.不确定B.2nC.2n+1D.2n-110.已知某哈夫曼树的度为 m,其中叶结点个数为 n,那么非叶结点的个数为( )。 (分数:2.00)A.B.C.D.11.一棵哈夫曼树共有 99 个结点,对其进行哈夫曼编码,共能得到( )种不同的编码。(分数:2.00)A.48B.50C.99D.10012.一棵含有 n 个结点的 k 叉树,可能达到的最大深度为( ),最小深度为( )。(分数:2.00)A.n-k+1,log k n+1B.n,log k n+1C
6、.n,log k n-1D.n-k+1,log k n+113.已知一棵满二叉树的结点个数为 20 到 40 之间的素数,此二叉树的叶子结点有( )个。(分数:2.00)A.23B.29C.16D.3214.有( )棵不同的二叉树,其结点的前序序列为 a 1 ,a 2 ,a n 。 (分数:2.00)A.B.C.D.15.有 n 个叶结点的非满的完全二叉树的高度为( )。(分数:2.00)A.2n+1B.2n-1C.log 2 2n+1D.log 2 2n-116.在一棵二叉树中,单分支结点数为 30,双分支结点数为 15,则叶子结点数为( )。(分数:2.00)A.15B.16C.17D.4
7、,17.判断线索二叉树中某结点*p 有左孩子的条件是( )。(分数:2.00)A.p-lchild=NULLB.p-lchild=0C.p-hag=0D.p 一hag=118.在线索二叉树中,结点*p 没有左子树的充要条件是( )。(分数:2.00)A.p-lchild=NULLB.p-hag=1C.p-ltag=1 且 p 一lchild=NULLD.以上都不对19.如果 T1 是由有序树 T 转换而来的二叉树,那么 T 中结点的前序遍历序列就是 T1 中结点的( )遍历序列。(分数:2.00)A.前序B.中序C.后序D.层次序20.在图中所示的 4 棵二叉树中,( )不是完全二叉树。 (分
8、数:2.00)A.图(a)B.图(b)C.图(c)D.图(d)21.一棵二叉树如下图所示,其中序遍历序列为( )。 (分数:2.00)A.abdgcefhB.dgbaechfC.gdbehfcaD.abcdeflgh22.有 n 个叶子结点的哈夫曼树的结点总数为( )。(分数:2.00)A.不确定B.2nC.2n+1D.2n-123.如图所示的 T2 是由森林 T1 转换而来的二叉树,那么森林 T1 有( )个叶结点。 (分数:2.00)A.4B.5C.6D.7二、综合应用题(总题数:9,分数:18.00)24.综合应用题 41-47 小题。(分数:2.00)_25.假定用两个一维数组 LN和
9、 RN作为有 N 个结点 1,2,N 的二叉树的存储结构。Li和 Ri分别指示结点 i 的左儿子和右儿子;Li=0(Ri=0)表示 i 的左(右)儿子为空。试写一个算法,由 L 和 R 建立一个一维数组 Tn,使 Ti存放结点 i 的父亲;然后再写一个判别结点 U 是否为结点 V 的后代的算法。(分数:2.00)_26.试找出分别满足下面条件的所有二叉树: (1)前序序列和中序序列相同。 (2)中序序列和后序序列相同。 (3)前序序列和后序序列相同。 (4)前序、中序、后序序列均相同。(分数:2.00)_27.假设一个仅包含二元运算符的算术表达式以链表形式存储在二叉树 BT 中,写出计算该算术
10、表达式值的算法。(分数:2.00)_28.画出如下图所示的二叉树所对应的森林。 (分数:2.00)_29.下述编码中,哪一组不是前缀码? 00,01,10,11,0,1,00,11,0,10,110,111(分数:2.00)_30.假设用于通信的电文由字符集a,b,c,d,e,f,g,h中的字母构成,这 8 个字母在电文中出现的概率分别为007,019,002,006,0_32,003,021,010。 (1)为这 8 个字母设计哈夫曼编码。 (2)若用三位二进制数(07)对这 8 个字母进行等长编码,则哈夫曼编码的平均码长是等长编码的百分之几?它使电文总长平均压缩多少?(分数:2.00)_3
11、1.有 n 个结点的完全二叉树存放在一维数组 A1n中,试据此建立一棵用二叉链表表示的二叉树,根由 tree 指向。(可不定义结构体)(分数:2.00)_32.已知深度为 h 的二叉树采用顺序存储结构已存放于数组 BT12 k 一 1中,请写一非递归算法,产生该二叉树的二叉链表结构。设二叉链表中链结点的构造为(lchild,data,rchild),根结点所在链结点的指针由 T 给出。(分数:2.00)_计算机专业基础综合数据结构(树与二叉树)-试卷 2 答案解析(总分:64.00,做题时间:90 分钟)一、单项选择题(总题数:23,分数:46.00)1.单项选择题 1-40 小题。下列每题给
12、出的四个选项中,只有一个选项是最符合题目要求的。(分数:2.00)_解析:2.设树 T 的度为 4,其中度为 1、2、3 和 4 的结点个数分别为 4、1、1、1,则 T 中的叶子数为( )。(分数:2.00)A.10B.11C.9D.7 解析:解析:根据题中条件可知,14+21+3+4+1=4+1+1+1+n 0 ,由此可以得出:n 0 =14+21+3+4+1 一(4+1+1+1)=147=7.3.用下列元素序列(22,8,62,35,48)构造平衡二叉树,当插入( )时,会出现不平衡的现象。(分数:2.00)A.22B.35C.48 D.62解析:解析:由题中所给的结点序列构造二叉排序树
13、的过程如下图:4.下面的算法实现了将二叉树中每一个结点的左右子树互换。addQ(Q,bt)为进队的函数,delQ(Q)为出队的函数,empty(Q)为判别队列是否为空的函数,空白处应填的内容是( )。 typedef struct node int data; struct node*lchild,*rchild; btnode; void exchange(btnode*bt) btnode*p,*q; if(bt) addQ(Q,bt); while(!EMPTY(Q) p=delQ(Q); q=p-rchild;p 一rchild=p 一lchild; ( (1) )=q; if(p-l
14、child) ( (2) ); if(p-rchild)addQ(Q,p-rchild); (分数:2.00)A.p-lchild,delQ(Q,p 一lchild)B.p-rchild,delQ(Q,p-lchild)C.p-lchild,addQ(Q,p-lchild) D.p-rchild,addQ(Q,p-lchild)解析:5.已知有一棵二叉树,其高度为 n,并且有且只有 n 个结点,那么二叉树的树形有( )种。(分数:2.00)A.nlog 2 nB.2 n+1C.2n 一 1D.2 n-1 解析:解析:由题可得,每层有一个结点,从根结点往下,每个结点都有做左孩子右孩子两种情况,由
15、概率知识可得,二叉树共有 2 n-1 种树形。6.已知二叉排序树如下图所示,下列序列构造此二叉排序树不正确的是( )。 (分数:2.00)A.(105,85,90,65,120,110,138)B.(105,120,1 10,138,85,65,90)C.(105,65,85,90,120,110,138) D.(105,85,65,90,120,138,110)解析:解析:将各选项中对应的二叉排序树画出即可得到答案。7.已知某平衡二叉树含有在 15 个结点,25 为其中的一个结点,如果在此平衡二叉树上查找关键字为 25的结点,下列比较的次序合理的是( )。(分数:2.00)A.29,35B.
16、35,45,25C.45,15,35,25 D.60,30,50,40,38,36解析:解析:设 N k 表示深度为 h 的平衡二叉树中含有的最少结点数,有:N 0 =0,N 1 =1,N 2 =2,N k =N k-1 +N k-2 +1,N 3 =4,N 4 =7,N 5 =12,N 6 =2015。也就是说,高度为 6 的平衡二叉树最少有 20 个结点,因此 15 个结点的平衡二叉树的高度为 5,而最小叶子结点的层数为 3,所以选项D 错误。而 A 和 B 的查找过程不能构成二叉排序树,因此 A、B 错误。8.利用逐点插入建立序列(50,72,43,85,75,20,35,45,65,3
17、0)对应的二叉排序树以后,要查找元素 30 要进行元素间的比较次数是( )。(分数:2.00)A.4B.5 C.6D.7解析:解析:利用逐点插入法建立二叉排序树是从空树开始,通过查找,将每个结点作为一个叶子插入。按题目中数据的输入次序建立的二叉排序树如下图所示,查找元素 30 的比较次数为 5 次。9.构建一个哈夫曼树,如果给定权值的个数为 n,那么哈夫曼树的结点总数为( )。(分数:2.00)A.不确定B.2nC.2n+1D.2n-1 解析:解析:哈夫曼树中只有度为 0 和度为 2 的结点,即 N=n 0 +n 2 ,而根据二叉树的性质:n 0 =n 2 +1,可知 n 0 =n,那么 n
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考研 试卷 计算机专业 基础 综合 数据结构 二叉 答案 解析 DOC
