收藏 分享(赏)

数据结构期末模拟试题(带答案).doc

上传人:tkhy51908 文档编号:7729737 上传时间:2019-05-24 格式:DOC 页数:7 大小:370.50KB
下载 相关 举报
数据结构期末模拟试题(带答案).doc_第1页
第1页 / 共7页
数据结构期末模拟试题(带答案).doc_第2页
第2页 / 共7页
数据结构期末模拟试题(带答案).doc_第3页
第3页 / 共7页
数据结构期末模拟试题(带答案).doc_第4页
第4页 / 共7页
数据结构期末模拟试题(带答案).doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、模拟试题 8一、选择题(每小题 1 分,共 10 分)1、设一数列的顺序为 1,2,3,4,5,通过栈结构不能排成的顺序数列为 。(A)3,2,5,4 ,1 (B)1,5, 4,2,3 (C)2,4,3,5,1 (D)4,5,3,2,12、二叉树的第 3 层最少有 B 个结点。(A)0 (B)1 (C)2 (D)33、一个具有 n 个顶点的连通无向图,其边的个数至少为 。(A)n-1 (B)n (C)n+1 (D)nlogn4、下列排序方法中, 比较次数与记录的初始状态无关。(A)直接插入排序 (B)起泡排序(C)快速排序 (D)直接选择排序5、一棵 Huffman 树总共有 11 个结点,则

2、叶子结点有 个。(A)5 (B)6 (C)7 (D)96、已知某算法的执行时间为(n+n 2)+log 2(n+2),n 代表问题规模,则该算法的时间复杂是 。(A)O(n) (B)O(n2) (C)O(log2n) (D)O(nlog2n)7、如果一棵树有 10 个叶子结点,则该树至少有 个结点。(A)10 (B)11 (C)19 (D)218、一个 100100 的三角形矩阵 a 采用行优先压缩存储后,如果首元素 a00是第一个元素,那么 a42是第 A 个元素。(A)13 (B)401 (C)402 (D)403二、判断题(每题 1 分,共 8 分,对的打,错的打)1、如果某数据结构的每

3、一个元素都最多只有一个直接前驱,则其必为线性表。 ( )2、快速排序法在最好的情况下时间复杂度是 O(n) 。 ( )3、进栈、出栈操作的时间复杂度为 O(n) 。 ( )4、进栈操作时,必须判断栈是否已满。 ( )5、一个有序的单链表不能采用折半查找法进行查找。 ( )6、二叉排序树采用先序遍历可以得到结点的有序序列。 ( )7、对长度为 100 的有序线性表用二分法查找时,最小比较次数为 0。 ( )8、一棵二叉排序树,根元素肯定是值最大的元素。 ( )三、填空题(每题 2 分,共 16 分)1、数据结构有 和 两种物理结构。2、某算法在求解一 10 阶方程组时,运算次数是 500,求解一

4、 30 阶方程组时,运算次数是4500,则该算法的时间复杂度是 3、在一个长度为 n 的顺序表中插入一个元素,最少需要移动 个元素,最多需要移动 个元素。4、如果某有向图的所有顶点可以构成一个拓扑排序序列,则说明该有向图 5、如果指针 p 指向一棵二叉树的一个结点,则判断 p 没有左孩子的逻辑表达式为 。6、一个数组的长度为 20,用于存放一个循环队列,则队列最多只能有 元素。7、无向图用邻接矩阵存储,其所有元素之和表示无向图的 。8、一个具有 n 个结点的线性表采用堆排序,在建堆之后还要进行 次堆调整。四、简答题(共 38 分)1、写出线性表(26,4,12,25,30,6,15,20,16

5、,2,18)采用二路归并排序算法排序后,第一趟和第二趟结束时的结果。 (5 分)2、在如图 1 所示树中:(1)给出该树的后序遍历的结果。 (4 分)(2)采用孩子-兄弟法将该树转换成一棵二叉树( 5 分)AEDCBGF图 1ECDBFA图 23、已知图 2 是一个有向图(1)画出该有向图的邻接链表。 (4 分)(2)基于你给出的邻接链表,求从定点 F 出发的广度优先遍历。 (4 分)4、用 Prim 算法(一条顶点一条顶点加入生成树)求图 3 的最小生成树。(1)从顶点 D 开始,写出各顶点加入生成树的次序。 (4 分)(2)画出最终的最小生成树。 (4 分)5、已知图 4 是一颗二叉排序树

6、:(1)计算平均查找长度。 (4 分)(2)画出删除值为 46 的结点后的二叉排序树。 (4 分)ECDBFA1G32481 5图 31 751 02 71 91 07 04 61 73 1图 44 33 9五、程序填空题(共 15 分)1、以下是采用冒泡排序法对数组 a 进行排序,完成程序。 (4 分)bsort(int a,int n) int n,j,j,tmp;for(i=_; i=1; -i)for(j=1; jnext)if (p-data = e)_ ;return q;3、下列算法是输出一棵二叉树的第 i 层的所有结点的值。假定根结点是第 1 层,完成以下程序。 (本题 5 分

7、)typedef struct linkNodeint data;Struct linkNode *lchild,*rchild; Node;void outi(Node *tree,int i)if(tree = NULL) return;if(i = 1)pintf(“%dn”,tree-data);return;outi(_);outi(_);六、编程题(共 15 分)1、两个字符数组 s,t 中各放有一个串,尝试编写算法,将所有 t 中含有而 s 中没有的字符加到 s 中(逐个加到 s 的后面) 。 (8 分)2、编写算法,删除顺序表前面的 10 个元素。如果顺序表中的元素少于 10

8、个,则删完为止。(7 分)已知顺序表的数据结构如下:typedef structint elem100;int length; SQ;模拟题 8 答案一、选择题1 2 3 4 5 6 7 8B A A D B B B D二、判断题1 2 3 4 5 6 7 8 三、填空题1、顺序 链式2、O(n 2)3、0 n4、无环路5、p-lchild=NULL6、197、所有顶点度之和8、n-2四、简答题1、 (1)4 26 12 25 6 30 15 20 2 16 18(2)4 12 25 26 6 15 20 30 2 16 182、 (1)B E F C G D A(2)ABECDF G3、 (

9、1)A D B DC B A D EE F B F C B (2)F C B A D E4、 (1)D E C A G B F(2)DECGFAB2348155、 (1) (1+22+33+42+51)/9=3(2)2 71 03 11 71 9 4 37 03 9238541五、程序填空题1、 (1)n-1(2) ajaj+12、 (1)NULL(2)p!=NULL 或者 !p(3)q=p3、(1) tree-lchild,i-1(2) tree-rchild,i-1六、编程题1、typedef structchar data100;int length; LIST;tAddTost(LIST *s,LIST *t)int i,j;for(i=0; ilength; +i)s-dataj = t-datai;+s-length;2、int delete(SQ *s)int i;if(s-length length = 0;retrun o;for(i=0; ielemi = s-elemi+10;s-length -= 10;return 0;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 教学研究

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报