数据结构试题及答案

上传人:豆浆 文档编号:867020 上传时间:2017-05-19 格式:DOC 页数:20 大小:146.24KB
返回 下载 相关 举报
数据结构试题及答案_第1页
第1页 / 共20页
数据结构试题及答案_第2页
第2页 / 共20页
数据结构试题及答案_第3页
第3页 / 共20页
数据结构试题及答案_第4页
第4页 / 共20页
数据结构试题及答案_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《数据结构试题及答案》由会员分享,可在线阅读,更多相关《数据结构试题及答案(20页珍藏版)》请在金锄头文库上搜索。

1、1数据结构试卷(二)一、选择题(24 分)1下面关于线性表的叙述错误的是( ) 。(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2设哈夫曼树中的叶子结点总数为 m,若用二叉链表作为存储结构,则该哈夫曼树中总共有( )个空指针域。(A) 2m-1 (B) 2m (C) 2m+1 (D) 4m3设顺序循环队列 Q0:M-1的头指针和尾指针分别为 F 和 R,头指针 F 总是指向队头元素的前一位置,尾指针 R 总是指向队尾元素的当前位置,则该循

2、环队列中的元素个数为( ) 。(A) R-F (B) F-R (C) (R-F+M)M (D) (F-R+M)M4设某棵二叉树的中序遍历序列为 ABCD,前序遍历序列为 CABD,则后序遍历该二叉树得到序列为( ) 。(A) BADC (B) BCDA (C) CDAB (D) CBDA5设某完全无向图中有 n 个顶点,则该完全无向图中有( )条边。(A) n(n-1)/2 (B) n(n-1) (C) n2 (D) n2-16设某棵二叉树中有 2000 个结点,则该二叉树的最小高度为( ) 。(A) 9 (B) 10 (C) 11 (D) 127设某有向图中有 n 个顶点,则该有向图对应的邻

3、接表中有( )个表头结点。(A) n-1 (B) n (C) n+1 (D) 2n-18设一组初始记录关键字序列(5,2,6,3,8) ,以第一个记录关键字 5 为基准进行一趟快速排序的结果为( ) 。(A) 2,3, 5,8,6 (B) 3,2,5,8,6(C) 3,2,5,6,8 (D) 2,3,6,5,8二、填空题(24 分)1. 1. 为了能有效地应用 HASH 查找技术,必须解决的两个问题是_和_。2. 2. 下面程序段的功能实现数据 x 进栈,要求在下划线处填上正确的语句。typedef struct int s100; int top; sqstack;void push(sqs

4、tack &stack,int x)if (stack.top=m-1) printf(“overflow”);else _;_;3. 3. 中序遍历二叉排序树所得到的序列是_序列(填有序或无序) 。4. 4. 快速排序的最坏时间复杂度为_,平均时间复杂度为_。5. 5. 设某棵二叉树中度数为 0 的结点数为 N0,度数为 1 的结点数为 N1,则该二叉树中度数为 2 的结点数为_;若采用二叉链表作为该二叉树的存储结构,则该二叉树中共有_个空指针域。6. 6. 设某无向图中顶点数和边数分别为 n 和 e,所有顶点的度数之和为 d,则e=_。7. 7. 设一组初始记录关键字序列为(55,63,4

5、4, 38,75,80,31,56) ,则利用筛选法建立的初始堆为_。28. 8. 设 某 无 向 图 G 的 邻 接 表 为 31244321v,则从顶点 V1 开始的深度优先遍历序列为_;广度优先遍历序列为_。三、应用题(36 分)1 1 设一组初始记录关键字序列为(45,80,48,40 ,22,78) ,则分别给出第 4 趟简单选择排序和第 4 趟直接插入排序后的结果。2 2 设指针变量 p 指向双向链表中结点 A,指针变量 q 指向被插入结点 B,要求给出在结点 A 的后面插入结点 B 的操作序列(设双向链表中结点的两个指针域分别为 llink和 rlink) 。3 3 设一组有序的

6、记录关键字序列为(13,18,24,35 ,47,50,62,83,90) ,查找方法用二分查找,要求计算出查找关键字 62 时的比较次数并计算出查找成功时的平均查找长度。4 4 设一棵树 T 中边的集合为(A,B),(A,C),(A,D) ,(B,E),(C,F),(C,G) ,要求用孩子兄弟表示法(二叉链表)表示出该树的存储结构并将该树转化成对应的二叉树。5 5 设有无向图 G(如右图所示) ,要求给出用普里姆算法构造最小生成树所走过的边的集合。6 6 设有一组初始记录关键字为(45,80,48,40,22 ,78) ,要求构造一棵二叉排序树并给出构造过程。3数据结构试卷(二)参考答案一、

7、选择题1.D 2.B 3.C 4.A 5.A 6.C 7.B 8.C二、填空题1. 1. 构造一个好的 HASH 函数,确定解决冲突的方法2. 2. stack.top+,stack.sstack.top=x3. 3. 有序4. 4. O(n2),O(nlog 2n)5. 5. N0-1,2N 0+N16. 6. d/27. 7. (31,38,54,56,75,80,55,63)8. 8. (1,3,4,2) ,(1 ,3,2,4)三、应用题1. 1. (22,40,45,48,80,78),(40 ,45,48,80,22,78)2. 2. q-llink=p; q-rlink=p-rli

8、nk; p-rlink-llink=q; p-rlink=q;3. 3. 2,ASL=91*1+2*2+3*4+4*2)=25/94. 4. 树的链式存储结构略,二叉树略5. 5. E=(1,3) ,(1,2),(3,5) ,(5,6) ,(6,4)6. 6. 略4数据结构试卷(三)一、选择题(30 分)1设某数据结构的二元组形式表示为 A=(D,R),D=01,02,03,04,05,06,07,08,09,R=r ,r=, , ,则数据结构 A 是( ) 。(A) 线性结构 (B) 树型结构 (C) 物理结构 (D) 图型结构2下面程序的时间复杂为( )for(i=1,s=0; inext

9、;p-data=q-data ;p-next=q-next ;free(q);(B) q=p-next;q-data=p-data ;p-next=q-next;free(q);(C) q=p-next;p-next=q-next;free(q);(D) q=p-next;p-data=q-data ;free(q);4设有 n 个待排序的记录关键字,则在堆排序中需要( )个辅助记录单元。(A) 1 (B) n (C) nlog2n (D) n25设一组初始关键字记录关键字为(20,15,14,18,21,36,40,10) ,则以 20 为基准记录的一趟快速排序结束后的结果为( )。(A)

10、10,15,14 ,18,20,36 ,40,21(B) 10,15,14,18,20, 40,36,21(C) 10,15,14,20,18, 40,36,2l(D) 15,10 ,14,18,20, 36,40,216设二叉排序树中有 n 个结点,则在二叉排序树的平均平均查找长度为( ) 。(A) O(1) (B) O(log2n) (C) (D) O(n2)7设无向图 G 中有 n 个顶点 e 条边,则其对应的邻接表中的表头结点和表结点的个数分别为( ) 。(A) n,e (B) e,n (C) 2n,e (D) n,2e8. 设某强连通图中有 n 个顶点,则该强连通图中至少有( )条边

11、。(A) n(n-1) (B) n+1 (C) n (D) n(n+1)9设有 5000 个待排序的记录关键字,如果需要用最快的方法选出其中最小的 10 个记录关键字,则用下列( )方法可以达到此目的。(A) 快速排序 (B) 堆排序 (C) 归并排序 (D) 插入排序10.下列四种排序中( )的空间复杂度最大。(A) 插入排序 (B) 冒泡排序 (C) 堆排序 (D) 归并排序二、填空殖(48 分,其中最后两小题各 6 分)1. 1. 数据的物理结构主要包括_和_两种情况。2. 2. 设一棵完全二叉树中有 500 个结点,则该二叉树的深度为_;若用二叉链表作为该完全二叉树的存储结构,则共有_

12、个空指针域。3. 3. 设输入序列为 1、2、3,则经过栈的作用后可以得到_种不同的输出序列。4. 4. 设有向图 G 用邻接矩阵 Ann作为存储结构,则该邻接矩阵中第 i 行上所有元素之和等于顶点 i 的_ ,第 i 列上所有元素之和等于顶点 i 的_。5. 5. 设哈夫曼树中共有 n 个结点,则该哈夫曼树中有_个度数为 1 的结点。6. 6. 设有向图 G 中有 n 个顶点 e 条有向边,所有的顶点入度数之和为 d,则 e 和 d的关系为_。7. 7. _遍历二叉排序树中的结点可以得到一个递增的关键字序列(填先序、中序或后序) 。58. 8. 设查找表中有 100 个元素,如果用二分法查找

13、方法查找数据元素 X,则最多需要比较_次就可以断定数据元素 X 是否在查找表中。9. 9. 不论是顺序存储结构的栈还是链式存储结构的栈,其入栈和出栈操作的时间复杂度均为_。10. 10. 设有 n 个结点的完全二叉树,如果按照从自上到下、从左到右从 1 开始顺序编号,则第 i 个结点的双亲结点编号为 _,右孩子结点的编号为_。11. 11. 设一组初始记录关键字为(72,73,71,23,94 ,16,5) ,则以记录关键字 72 为基准的一趟快速排序结果为_。12. 12. 设有向图 G 中有向边的集合 E=, ,则该图的一种拓扑序列为_。13. 13. 下列算法实现在顺序散列表中查找值为

14、x 的关键字,请在下划线处填上正确的语句。struct recordint key; int others;int hashsqsearch(struct record hashtable ,int k)int i,j; j=i=k % p;while (hashtablej.key!=k&hashtablej.flag!=0)j=(_) %m; if (i=j) return(-1);if (_ ) return(j); else return(-1);14. 14. 下列算法实现在二叉排序树上查找关键值 k,请在下划线处填上正确的语句。typedef struct nodeint key; struct node *lchi

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

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