收藏 分享(赏)

数据结构经典复习题(仅供参考).docx

上传人:HR专家 文档编号:12067524 上传时间:2021-08-26 格式:DOCX 页数:15 大小:139.80KB
下载 相关 举报
数据结构经典复习题(仅供参考).docx_第1页
第1页 / 共15页
数据结构经典复习题(仅供参考).docx_第2页
第2页 / 共15页
数据结构经典复习题(仅供参考).docx_第3页
第3页 / 共15页
数据结构经典复习题(仅供参考).docx_第4页
第4页 / 共15页
数据结构经典复习题(仅供参考).docx_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、精品文档一、选择题 (20 分 )1下面关于线性表的叙述错误的是(D)。(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2设某棵二叉树的中序遍历序列为 ABCD,前序遍历序列为 CABD,则后序遍历该二叉树得到序列为( A )。(A) BADC(B) BCDA(C) CDAB(D) CBDA3设某棵二叉树中有2000 个结点,则该二叉树的最小高度为(C)。(A) 9(B) 10(C) 11(D) 124设二叉排序树中有n 个结点,则在二叉排

2、序树的平均平均查找长度为(B )。(A) O(1)2(C)(D) O(n2)(B) O(log n)5设有 5000 个待排序的记录关键字,如果需要用最快的方法选出其中最小的10 个记录关键字,则用下列(B )方法可以达到此目的。(A) 快速排序(B) 堆排序(C) 归并排序(D)插入排序第 9 小题分析: 9 快速排序、归并排序和插入排序必须等到整个排序结束后才能够求出最小的 10 个数,而堆排序只需要在初始堆的基础上再进行10 次筛选即可, 每次筛选的时间2复杂度为 O(log n) 。6. 下列四种排序中( D )的空间复杂度最大。(A)插入排序(B)冒泡排序(C)堆排序(D)归并排序7

3、设一维数组中有 n 个数组元素,则读取第 i个数组元素的平均时间复杂度为(C )。(A) O(n)2(C) O(1)(D) O(n2)(B) O(nlog n)8设一棵二叉树的深度为 k,则该二叉树中最多有( D)个结点。(A) 2k-1(B) 2k(C) 2k-1(D) 2k-19在二叉排序树中插入一个结点的时间复杂度为(B)。(A) O(1)(B) O(n)(C) O(logn)(D) O(n2)210设用链表作为栈的存储结构则退栈操作(B)。(A)必须判别栈是否为满(B)必须判别栈是否为空(C)判别栈元素的类型(D)对栈不作任何判别11下列四种排序中(A )的空间复杂度最大。(A)快速排

4、序(B)冒泡排序(C)希尔排序(D)堆12设某二叉树中度数为0 的结点数为 N ,度数为1 的结点数为N ,度数为 2的结点数为0lN ,则下列等式成立的是(C )。2(A) N 0=N1+1(B) N 0=Nl +N2(C) N 0=N2+1(D) N 0=2N1+l13. 设有序顺序表中有 n 个数据元素,则利用二分查找法查找数据元素X 的最多比较次数不超过( A )。(A) log 2n+1(B) log2n-1(C) log2n(D) log2(n+1)14数据的最小单位是(A)。(A)数据项(B)数据类型(C)数据元素(D)数据变量15设一个有序的单链表中有n 个结点,现要求插入一个

5、新结点后使得单链表仍然保持有序,则该操作的时间复杂度为(D )。2(B) O(1)(C) O(n2)(D) O(n)(A) O(log n)。1 欢迎下载精品文档16设一棵 m叉树中度数为0 的结点数为 N0,度数为1 的结点数为 Nl ,度数为 m的结点数为 Nm,则 N0=(B)。(A) N l +N2+ +Nm(B) l+N2+2N3+3N4+ +(m-1)Nm(C) N +2N +3N+ +(m-1)Nm(D) 2Nl+3N+ +(m+1)Nm234217设输入序列是1、2、3、 n,经过栈的作用后输出序列的第一个元素是n,则输出序列中第 i 个输出元素是( C )。(A) n-i(B

6、) n-1-i(C) n+1-i(D) 不能确定18时间复杂度不受数据初始状态影响而恒为O(nlogn) 的是( A )。2(A)堆排序(B)冒泡排序(C)希尔排序(D) 快速排序19设二叉树的先序遍历序列和后序遍历序列正好相反,则该二叉树满足的条件是(D )。(A)空或只有一个结点(B)高度等于其结点数(C)任一结点无左孩子(D)任一结点无右孩子20顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为(A)。(A) O(n)(B) O(n2)(C) O(n1/2 )(D) O(1og2n)21二路归并排序的时间复杂度为(C )。(A) O(n)(B) O(n2)(C) O(nlog2n

7、)(D) O(1og2n)22. 深度为 k 的完全二叉树中最少有(B)个结点。k-1k-1k-1+1k(A) 2 -1(B) 2(C) 2(D) 2 -123. 设二叉排序树上有n 个结点,则在二叉排序树上查找结点的平均时间复杂度为(D)。(A) O(n)(B) O(n2(C) O(nlog2(D) O(1og2n)n)24( B )二叉排序树可以得到一个从小到大的有序序列。(A) 先序遍历(B) 中序遍历(C) 后序遍历(D) 层次遍历25设按照从上到下、从左到右的顺序从1 开始对完全二叉树进行顺序编号,则编号为i结点的左孩子结点的编号为(B)。(A) 2i+1(B) 2i(C) i/2(

8、D) 2i-126程序段 s=i=0 ;do i=i+1; s=s+i ; while(inext=top;(D) top=top-next;28. 建立一个长度为n 的有序单链表的时间复杂度为(C )(A) O(n)(B) O(1)(C) O(n2)(D) O(log2n)29. 在二叉排序树中插入一个关键字值的平均时间复杂度为(B )。(A) O(n)(B) O(1og n)(C) O(nlogn)(D) O(n2)2230. 设一棵完全二叉树中有 65 个结点,则该完全二叉树的深度为(B )。(A) 8(B) 7(C) 6(D) 531. 队列是一种( A )的线性表。(A)先进先出(B

9、)先进后出(C)只能插入(D)只能删除32. 利用直接插入排序法的思想建立一个有序线性表的时间复杂度为(C )。(A) O(n)(B) O(nlog2n)(C) O(n 2)(D) O(1og 2n)33设指针变量p 指向双向链表中结点A,指针变量s 指向被插入的结点X,则在结点A 的后面插入结点X 的操作序列为(D)。(A) p-right=s; s-left=p; p-right-left=s; s-right=p-right;。2 欢迎下载精品文档(B) s-left=p; s-right=p-right;p-right=s; p-right-left=s;(C) p-right=s;

10、p-right-left=s; s-left=p; s-right=p-right;(D) s-left=p; s-right=p-right;p-right-left=s; p-right=s;34. 一个栈的进栈序列是 a, b, c, d,e,则栈的不可能的输出序列是 C 。A edcba B decba C dceab D AbcdeA: a,b,c,d,e进,之后依次出栈B: a,b,c,d,进, d 出, e 进, e,c,b,a出D: a 进 a 出, b 进 b 出 e 进 e 出C:的话 dce 都好办,之后的 ab 做不到这道题就是没告诉你进栈的同时可以随时出栈=二、填空题

11、1. 数据的物理结构主要包括顺序存储结构和链式存储结构两种情况。2. 数据结构从逻辑上划分为三种基本类型:线性结构、树型结构和图型结构。3.4. 公式:二维数组 A 中任一元素 aij 的存储位置:( LOC( 0,0)是 a00 的存储位置)LOC(i, j)=LOC ( 0, 0)+( b2*i+j)L5. 快速排序的时间性能分析最好情况:每一次划分对一个记录定位后,该记录的左侧子表与右侧子表的长度相同,为O(nlog 2n) 。最坏情况:2每次划分只得到一个比上一次划分少一个记录的子序列(另一个子序列为空),为O(n ) 。平均情况:为 O(nlog 2n) 。6.在快速排序、堆排序、归

12、并排序中,_归并 _排序是稳定的。7.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为_O(log n)_ ,整个堆2排序过程的时间复杂度为 _ O(nlog2n)_ 。8.快速排序的最坏时间复杂度为O(n2) ,平均时间复杂度为 O(nlog 2n) 。9.散列表中解决冲突的两种方法是开放定址法和链地址法。10. 在堆排序和快速排序中, 如果从平均情况下排序的速度最快的角度来考虑应最好选择_快速 _排序,如果从节省存储空间的角度来考虑则最好选择_堆 _排序。3 欢迎下载精品文档三、判断题全对或全错得5 分。4 欢迎下载精品文档1调用一次深度优先遍历可以访问到图中的所有顶点。()2分块

13、查找的平均查找长度不仅与索引表的长度有关,而且与块的长度有关。( )3冒泡排序在初始关键字序列为逆序的情况下执行的交换次数最多。()4满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。( )5设一棵二叉树的先序序列和后序序列,则能够唯一确定出该二叉树的形状。()6层次遍历初始堆可以得到一个有序的序列。()7设一棵树 T 可以转化成二叉树 BT,则二叉树 BT 中一定没有右子树。( )8线性表的顺序存储结构比链式存储结构更好。()9中序遍历二叉排序树可以得到一个有序的序列。( )10. 快速排序是排序算法中平均性能最好的一种排序。()11不论是入队列操作还是入栈操作,在顺序存储结构上都需要考

14、虑“溢出” 情况。()12当向二叉排序树中插入一个结点,则该结点一定成为叶子结点。()13设某堆中有 n 个结点, 则在该堆中插入一个新结点的时间复杂度为O(log 2n) 。( )14完全二叉树中的叶子结点只可能在最后两层中出现。()15哈夫曼树中没有度数为 1 的结点。( )16对连通图进行深度优先遍历可以访问到该图中的所有顶点。( )17先序遍历一棵二叉排序树得到的结点序列不一定是有序的序列。()18由树转化成二叉树,该二叉树的右子树不一定为空。()19线性表中的所有元素都有一个前驱元素和后继元素。( )20. 带权无向图的最小生成树是唯一的。( )21. 如果两个关键字的值不等但哈希函

15、数值相等,则称这两个关键字为同义词。()22. 设初始记录关键字基本有序,则快速排序算法的时间复杂度为O(nlog 2n) 。( )23. 分块查找的基本思想是首先在索引表中进行查找,以便确定给定的关键字可能存在的块号,然后再在相应的块内进行顺序查找。()24.二维数组和多维数组均不是特殊的线性结构。()25.向二叉排序树中插入一个结点需要比较的次数可能大于该二叉树的高度。()26.如果某个有向图的邻接表中第i 条单链表为空,则第i 个顶点的出度为零。()27.非空的双向循环链表中任何结点的前驱指针均不为空。()28.不论线性表采用顺序存储结构还是链式存储结构,删除值为X 的结点的时间复杂度均

16、为O(n) 。( )29. 图的深度优先遍历算法中需要设置一个标志数组,以便区分图中的每个顶点是否被访问过。( )30. 稀疏矩阵的压缩存储可以用一个三元组表来表示稀疏矩阵中的非0 元素。()31. 有向图的邻接表和逆邻接表中表结点的个数不一定相等。( )32. 对链表进行插入和删除操作时不必移动链表中结点。( )33. 子串“ ABC”在主串 “ AABCABCD”中的位置为 2。 ( )34. 若一个叶子结点是某二叉树的中序遍历序列的最后一个结点,则它必是该二叉树的先序遍历序列中的最后一个结点。 ( )35. 希尔排序算法的时间复杂度为O(n2) 。( )36. 用邻接矩阵作为图的存储结构

17、时,则其所占用的存储空间与图中顶点数无关而与图中边数有关。 ( )37. 中序遍历一棵二叉排序树可以得到一个有序的序列。( )38.入栈操作和入队列操作在链式存储结构上实现时不需要考虑栈溢出的情况。( )39.顺序表查找指的是在顺序存储结构上进行查找。( )。5 欢迎下载精品文档40. 堆是完全二叉树,完全二叉树不一定是堆。( )四、简答题1、四类数据结构答;、集合;结构中的数据元素之间除了“同属于一个集合”的关系外,别无其他关系。、线性结构:结构中数据元素之间存在一个对一个的关系。、树形结构:结构中的数据元素之间存在一个对多个的关系。、图形结构或网状结构:结构中的数据元素之间存在多个对多个的

18、关系。2、什么叫稳定的排序?列出基本稳定排序的算法。答:假定在 Ki=Kj ( 1i n, 1j n, i j) , 且在排序前的序列中Ri 领先于 Rj (即 inext=0) return;else for(q=head,p=head-next;p!=0;p=q-next)for(s=head;s!=q-next;s=s-next) if (s-datap-data) break;if(s=q-next)q=p;elseq-next=p-next; p-next=s-next; s-next=p; t=p-data;p-data=s-data;s-data=t;3. 试编写算法 , 删除双

19、向循环链表中第 k 个结点。(老师中说要删除节点的前驱和后序)void del(DUNODE *head,int i)DUNODE *p;if(i=0)*head=*head-next;*head-prior=NULL;return(0);Elsefor(j=0;jnext;if(p=NULL|ji) return(1);p-prior-next=p-next;p-next-prior=p-proir;free(p);return(0);4、给出二叉树结构图实现变历算法,先中序后序、考察先序变点,对先中后序访问,输出结点的次序。略。7 欢迎下载精品文档。8 欢迎下载精品文档欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书, 学习资料等等打造全网一站式需求。9 欢迎下载

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

当前位置:首页 > 网络科技 > 计算机原理

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


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

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

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