1、数据结构基础复习题2CIW数据结构复习题一、判断题 1. 线性表的逻辑顺序总是与其物理顺序一致。( )2. 线性表的顺序存储优于链式存储。( )3. 在长度为n的顺序表中,求第i个元素的直接前驱算法的时间复杂度为0(1)。( )4. 若一棵二叉树中的结点均无右孩子,则该二叉树的中根遍历和后根遍历序列正好相反。( )6. 内部排序是指排序过程在内存中进行的排序。( )7. 当待排序序列初始有序时,简单选择排序的时间复杂性为O(n)。( )8. 用邻接矩阵存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间大小只与图中的顶点个数有关,而与图的边数无关。( )9.任何一棵二叉树的叶结点在三种遍历
2、中的相次序是不变的。( )10. 若将一批杂乱无章的数据按堆结构组织起来, 则堆中数据必然按从小到大的顺序线性排列。( )14. 当向一个最小堆插入一个具有最小值的元素时,该元素需要逐层向上调整,直到被调整到堆顶位置为止。( )15. 哈希查找法中解决冲突问题的常用方法是除留余数法。( )16. 具有n个结点的堆进行插入一个元素运算的时间复杂度为O(n)。( )17. 堆排序是一种稳定的排序算法。( )18. 如果有向图中各个顶点的度都大于2,则该图中必有回路。( )19. 在一个顺序存储的循环队列中, 队头指针指向队头元素的后一个位置。( )21. 在一棵二叉树中,假定每个结点只有左子女,没
3、有右子女,它分别进行前序遍历和中根遍历,则具有相同的结果。( )22. 拓扑排序是指结点的值是有序排序的。( )25. 图的深度优先搜索是一种典型的回溯搜索的例子,可以通过递归算法求解。( )26. 二叉排序树进行中根遍历,可得到结点的有序排列。( )27. 任何一棵二叉树的叶结点在三种遍历中的相次序是不变的。( )28. 边数很少的稀疏图,适宜用邻接矩阵表示。( )29. 二叉树是一棵无序树。( )31. 当待排序序列初始有序时,快速排序的时间复杂性为O(n)。( )32. 顺序表的空间利用率高于链表。( )33. 采用不同的遍历方法,所得到的无向图的生成树是不同的。( )34. 有回路的有
4、向图不能完成拓扑排序。( )35. 存在这样的二叉树,它采用任何次序的遍历,结果相同。( )36. 装载因子是散列表的一个重要参数,它反映了散列表的装满程度。( )37. 算法分析的目的是找出数据结构的合理性。( )38. 单链表可以实现随机存取。( )39. 边数很多的稠密图,适宜用邻接矩阵表示。( )40. 理想情况下哈希查找的等概率查找成功的平均查找长度是O(1)。( )41. 边数很少的稀疏图,适宜用邻接表表示。( )42.于同一组关键字互不相同的记录,若生成二叉排序树时插入记录的次序不同则得到不同形态的二叉排序树。( )44.哈希查找法中解决冲突问题的常用方法是除留余数法。( )45
5、.顺序查找法适用于存储结构为顺序或链接存储的线性表。( )46. 若让元素1,2,3依次进栈,则出栈次序1,3,2是不可能出现的情况。( )47. 在线性链表中删除中间的结点时,只需将被删结点释放。( )48. 线性表若采用链式存储表示, 在删除时不需要移动元素。( )49. 任何用顶点表示活动的网络(AOV网)进行拓扑排序的结果都是唯一的。( )50. 邻接矩阵适用于稠密图(边数接近于顶点数的平方),邻接表适用于稀疏图(边数远小于顶点数的平方)。( )51. 算法和程序原则上没有区别,在讨论数据结构时二者是通用的。( )53. 循环链表的结点与单链表的结点结构完全相同,只是结点间的连接方式不
6、同。( )54. 能够在链接存储的有序表上进行折半查找,其时间复杂度与在顺序存储的有序表上相同。( )55. 在一棵二叉树中,假定每个结点只有左子女,没有右子女,它分别进行中序遍历和后序遍历,则具有相同的结果。( )56. 一个无向连通图的生成树是图的极小的连通子图。( )58. 快速排序的时间复杂性不受数据初始状态影响,恒为O(nlog2n)。( )61.如果无向图中每个顶点的度都大于等于2,则该图中必有回路。( )62. 顺序存储方式只适用于存储线性表。( )63. 若一棵二叉树中的结点均无右孩子,则该二叉树的中根遍历和后根遍历序列正好相同。( )64. 邻接表只能用于有向图的存储,邻接矩
7、阵于有向图和无向图的存储都适用。( )65. 完全二叉树的某结点若无左孩子,则它必是叶结点。( )66. 在一棵二叉树中,假定每个结点只有左子女,没有右子女,它分别进行前序遍历和后序遍历,则具有相同的结果。( )67. 折半查找所应的判定树,既是一棵二叉查找树,又是一棵理想平衡二叉树。( )69. 在双向循环链表做删除一个结点操作时,应先将被删除结点的前驱结点和后继结点链接好再执行删除结点操作。( )72. 理想情况下哈希查找的等概率查找成功的平均查找长度是O(1)。( )73. 在任意一棵二叉树的先根序列和后根序列中,各叶子之间的相次序关系都相同。( )75. 采用不同的遍历方法,所得到的无
8、向图的生成树总是相同的。( )76. 于同一组记录,生成二叉排序树的形态与插入记录的次序无关。( )77. 一个有向图进行拓扑排序,一定可以将图的所有顶点按其关键字大小排列到一个拓扑有序的序列中。( )78. 链式栈与顺序栈相比,一个明显的优点是通常不会出现栈满的情况。( )79. 于两棵具有相同记录集合而具有不同形态的二叉排序树,按中根遍历得到的结点序列是相同的。( )81. 边数很少的稀疏图,适宜用邻接矩阵表示。( )82. 递归的算法简单、易懂、容易编写,而且执行效率也高。( )84.链队列的出队操作总是需要修改尾指针。( )85. 栈和队列都是顺序存取的线性表, 但它们存取位置的限制不
9、同。( )87. 直接选择排序是一种稳定的排序方法。( )89. 线性表的逻辑顺序总是与其物理顺序一致。( )91. 平衡二叉树进行中根遍历,可得到结点的有序序列。( )92. 双向循环链表的结点与单链表的结点结构相同,只是结点间的连接方式不同。( )93.在顺序表中,逻辑上相邻的元素在物理位置上不一定相邻。( )97. 当输入序列已经基本有序时,冒泡排序需要比较关键字的次数,比快速排序还要少。( )98. 顺序查找法适用于存储结构为顺序或链接存储的线性表。( )100. 哈夫曼树是带权路径长度最短的树,路径上权值较大的结点离根较近。( )101.在一个有向图中,所有顶点的入度之和等于所有顶点
10、的出度之和。( )102. 在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针。( )105.在二叉排序树中插入新结点时,新结点总是作为叶子结点插入。( )106. 边数很少的稀疏图,适宜用邻接表表示。( )107. 链队列的出队操作总是需要修改尾指针。( )108. 在一棵二叉树中,假定每个结点只有左子女,没有右子女,它分别进行前序遍历和按层遍历,则具有相同的结果。( )110. 二叉树中不存在度大于2的结点,当某个结点只有一棵子树时无所谓左、右子树。( )112. 图的广度优先搜索算法通常采用非递归算法求解。( )113. 拓扑排序是指结点的值是有序排序的。( )114
11、. 数据的逻辑结构与数据元素本身的内容和形式无关。116. 二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。( )117.边数很多的稠密图,适宜用邻接表表示。( )119. 在索引顺序结构的查找中,索引表既可以采取顺序查找,也可以采用折半查找。( )120. 算法和程序都应具有下面一些特征:有输入,有输出,确定性,有穷性,有效性。( )121. 一个连通图进行一次深度优先搜索可以遍访图中的所有顶点。( )122. 于一棵具有n个结点的任何二叉树,进行先根、中根或后根的任一种次序遍历的空间复杂度为O(log2n)。(
12、 )124. 线性表若采用链式存储表示时,其存储结点的地址可连续也可不连续。( )127. 进行折半查找的表必须是顺序存储的有序表。( )128. 在索引顺序结构上实施分块查找,在等概率情况下,其平均查找长度不仅与子表个数有关,而且与每一个子表中的记录个数有关。( )129. 图中各个顶点的编号是人为的,不是它本身固有的,因此可以根据需要进行改变。( )130. 数据元素是数据的最小单位。131. 在长度为n的顺序表中,求第i个元素的直接前驱算法的时间复杂度为0(1)。( )二、单项选择题 1. 向一个有128个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动( )个元素。 A.64
13、 B.63 C.63.5 D.7A2. 线性表是具有n个( )的有限序列(n0)。 A.表元素 B.字符 C.数据元素 D.数据项C3. 下列哪种排序方法在最坏的情况下的时间复杂度是O(n*log2n)( )。A .直接插入排序 B. 堆排序 C. 简单选择排序 D. 快速排序B5. 从一个栈顶指针为HS的链栈中删除一个结点时,用x保存被删结点的值,则执行( )。 A.x=HS;HS=HS-next;B.x=HS-data;C.HS=HS-next;x=HS-data;D.x=HS-data;HS=HS-next;D8. 在一个长度为n的顺序表中插入一个元素时,等概率情况下的平均移动元素的次数
14、是( )。An/2 B(n-1)/2 Cn*(n-1)/2 D (n+1)/2A10. 在含n个顶点和e条边的无向图的邻接矩阵中,零元素的个数为( )。 Ae B2e Cn2e Dn22eD13. 循环队列用数组AM存放元素,已知其头尾指针分别为front和rear,则当前队列中的元素个数是()。Arear-front+1 Brear-front-1 Crear-front D(rear-front+M) % MD16. 用邻接矩阵表示的连通图进行深度或广度优先遍历时的时间复杂度为( )。AO(n2) BO(n) C O(e2) D O(e+n)A17. 用邻接表表示的连通图进行深度或广度优先
15、遍历时的时间复杂度为( )。 A. O(n2) B. O(e2) C. O(n+e ) D. O(n2)C18. 一棵有124个叶子结点的完全二叉树,至多有( )个结点。 A251 B250 C248 D247D21. 在一个单链表中已知q所指的结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行( )。 A. s-next=p-next;p-next=s;B.p-next=s-next;s-next=p;C. q-next=s;s-next=p;D.p-next=s;s-next=q;C22. 关键字集合K=53,30,37,12,45,24,96,从一棵空二叉树开始逐个插入关键字,
16、建立二叉排序树,若希望得到的二叉排序树的高度最小,应选用下列输入序列()。A. 45,24,53,12,37,96,30 B.37,24,12,30,53,45,96C. 12,24,30,37,45,53,96 D.30,24,12,37,45,96,53B23. 有8个结点的无向图最多有( )条边。 A14 B. 28 C. 56 D. 112B27. 表(21,36,40,44,58,64,79,73)进行排序,使用下列( )方法最好。A简单选择排序 B堆排序 C冒泡排序 D归并排序C28. 将一棵有100个结点的完全二叉树从根的这一层开始,每一层从左到右依次结点进行编号,根结点编号为,
17、则编号为49的结点的左孩子的编号为()。98 99 50 48A30. 具有15个结点的二叉树的最小深度是()。A. 4 B. 5 C. 3 D. 6A31. 向一个栈顶指针为HS的链栈中插入一个s所指结点时,则执行( )。 A.HS-next=s; B.s-next=HS-next;HS-next=s;C.s-next=HS;HS=s;D.s-next=HS;HS=HS-next;B34. 在循环双链表的p所指接点之前插入s所指接点的操作是( )。 A.p- prior =s;s- next=p;p- prior-neft=s;s- prior =p- prior;B. p- prior =
18、s;p- prior - next =s;s- next =p;s- prior =p- prior;C.s- next =p;s- prior =p- prior;p- prior =s;p- prior - next =s;D.s- next =p;s- prior =p- prior;p- prior - next =s;p- prior =s;D36. 在有向图的顶点的拓扑序列中,如果Vi在Vj之前,则下列情况一定不会出现的是( )。A.图中有弧 B.图中Vi到Vj有一条路径 C. 图中没有弧 D.图中有弧D40. 有向图中一个顶点的度是该顶点的()。 A.入度 B. 出度 C. 入度
19、与出度之和 D. (入度+出度)/2C41. 已知在一棵度为3的树中,度为2的结点数为4,度为3的结点数为3,则该树中的叶子结点数为( )。A.5 B.8 C.11 D.18C44. 下列排序方法中,要求附加的内存容量最大的是()。A冒泡排序 B快速排序 C堆排序 D归并排序D47. 下列排序算法中,()算法可能会出现下面情况:初始数据有序,花费时间反而最多。堆排序 冒泡排序 快速排序 hell排序C48. 由3 个结点可以构造出( )种不同的二叉树。A.2 B.3 C.4 D.5D49. 存储无向图的邻接矩阵一定是一个()。A. 上三角矩阵 B.稀疏矩阵 C. 称矩阵 D. 角矩阵C50.
20、具有5个顶点的无向完全图有( )条边。A.6. B.10. C.16 D.20B53. 假设一个有n个顶点和e条弧的有向图用邻接表表示,则删除与某个顶点vi相关的所有弧的时间复杂度是( )。 AO(n) BO(e) CO(n+e) DO(n*e)C54. 算法分析的目的是( )。 A.找出数据结构的合理性 B.研究算法中的输入和输出的关系 C.分析算法的效率以求改进 D.分析算法的易懂性和文档性C55. 有8个结点的无向连通图最少有( )条边。 A5 B. 6 C. 7 D. 8C59. 高度为5的完全二叉树中含有的结点数至少为( )。A.16 B.17 C.31 D.32A60. 由同一关键
21、字集合构造的各棵二叉排序树 ( )A. 其形态不一定相同,但平均查找长度相同B. 其形态不一定相同,平均查找长度也不一定相同C. 其形态均相同,但平均查找长度不一定相同D. 其形态均相同,平均查找长度也都相同B61. 算法分析的两个主要方面是( )。 A.正确性和简单性 B.可读性和文档性 C.数据复杂性和程序复杂性 D.时间复杂度和空间复杂度D62. 关键字序列(56,23,78,92,88,67,19,34)进行增量为3的一趟希尔排序的结果为( )。A. (19,23,56,34,78,67,88,92) B. (23,56,78,66,88,92,19,34)C. (19,23,34,5
22、6,67,78,88,92) D. (19,23,67,56,34,78,92,88)D63. ()不是哈希查找中的冲突处理方法。A链地址法 B再哈希法 C除留余数法 D随机探测法C64. 在一个顺序表中,若表的第一个元素的存储地址是210,每一个元素的长度为3,则第5个元素的存储地址是()。 A219 B222 C225 D228B65. 在单链表中删除结点的时间复杂度为( )。 A.O(1) B.O(n2 ) C.O(n) D(logn)C67. 线性表采用链式存储时,结点的存储地址( )。 A必须是不连续的 B连续与否均可 C必须是连续的 D和头结点的存储地址相连续B68. 下列关键字序
23、列中,构成大根堆的是( )。A.5,8,1,3,9,6,2,7 B.9,8,1,7,5,6,2,3C.9,8,6,3,5,l,2,7 D.9,8,6,7,5,1,2,3D69. 在连通图的广度优先遍历算法中,需要借助的辅助数据结构是( )。A队列 B栈 C线性表 D有序表A70. 引起循环队列队头位置发生变化的操作是( )。A. 出队 B. 入队 C. 取队头元素 D. 取队尾元素A71. 评价一个算法时间性能的主要标准是( )。 A.算法易于调试 B. 算法易于理解 C.算法的稳定性和正确性 D.算法的时间复杂度D72. 在长度为n的顺序表中插入一个元素时,等概率情况下的平均移动元素的次数是
24、() 。A.(n-1)/2 B.n/2 C.n*(n-1)/2 D.(n+1)/2B74. 在一个长度为n的顺序存储线性表中,删除第i个元素(0in-1)时,需要从后向前依次前移( )个元素。A.n-i B.n-i+1 C. n-i-1 D.iA75. 在长度为n的顺序表中删除一个元素时,等概率情况下的平均移动元素的次数是( ) 。 A.(n-1)/2 B.n/2 C.n*(n-1)/2 D.(n+1)/2A77. 查找哈希表,不会产生冲突的哈希函数是( )。 A链地址法 B直接地址法 C除留余数法 D随机探测法B78. 用某种排序方法关键字序列(25,84,21,47,15,27,68,35
25、,20)进行排序时,序列的变化情况如下: 20,15,21,25,47,27,68,35,84 15,20,21,25,35,27,47,68,84 15,20,21,25,27,35,47,68,84 则所采用的排序方法是( )。 A选择排序 B希尔排序 C归并排序 D快速排序D79. 非空的循环单链表head的尾结点p满足( )。AP-next=NULL Bp=NULL CP-next=head DP=headC80. 从一个具有n个结点的单链表中查找其值等于x结点时,在查找成功的情况下,需平均比较( )个结点。 A.n B.n/2 C.(n-1)/2 D.(n+1)/2D81. 在有向图
26、的顶点的拓扑序列中,如果Vi在Vj之前,则下列情况一定不会出现的是( )。A. 图中有弧 B.图中Vi到Vj有一条路径C. 图中没有弧 D.图中有弧D85. 下列程序段的时间复杂度为( )。 s=0; for(i=1;in;i+) for(j=1;jnext=s;f=s; B.r-next=s;r=s;C.s-next=r;r=s; D.s-next=f;f=s;B95. 按序列26,38,54,9,47,13,20构造一棵二叉排序树,其深度为( )。 3 4 5 6B97. 在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是( )。 A.O(1) B.O(n) C.O(n
27、2) D.O(nlog2n)B98. 下列排序方法中,稳定的是( )。A归并排序 B快速排序 C堆排序 D希尔排序A101. 循环队列用数组AM存放元素,已知其头尾指针分别为front和rear,则当前队列中的元素个数是( )。 Arear-front+1 Brear-front-1 Crear-front D(rear-front+M) % MD102. n个结点的完全有向图含有边的数目( )。A.n*n B.n(n+1) C.n/2 D.n*(n-1)D103. 任何一个无向连通图的最小生成树( )。A.只有一棵 B.有一棵或多棵C.一定有多棵 D.可能不存在B105. 在以下排序方法中,
28、关键字比较的次数与记录的初始排列次序无关的是( )。A.冒泡排序 B.简单选择排序 C.直接插入排序 D.快速排序B107. 有40个结点的完全二叉树存储在数组1.40中,数组中第一个叶子结点是( )。A19 B20 C21 D22C109. 于一个具有5个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小( )。A.10 B.20 C.16 D.25D110. 用邻接表表示图进行深度优先遍历时,通常是采用( )来实现算法的。 A栈 B. 队列 C. 树 D. 图A111. 在有n个叶子结点的哈夫曼树中,其结点总数为()。不确定 2n 2n+1 2n-1 D112. 于一个头指针为H的带头结点的单链表,判定该表为空表的条件是()。A. H=NULL BH!=NULL
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1