您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 数据结构复习题及答案
数据结构第1页中南大学现代远程教育课程考试(考试)复习题及参考答案数据结构(使用教材:余腊生编著,人民邮电出版社出版,《数据结构—基于C++模板类的实现》一、判断题1.数组是一种复杂的数据结构,数组元素之间的关系既不是线性的也不是树形的。[]2.链式存储在插人和删除时需要保持物理存储空间的顺序分配,不需要保持数据元素之间的逻辑顺序。[]3.在用循环单链表表示的链式队列中,可以不设队头指针,仅在链尾设置队尾指针。[]4.通常递归的算法简单、易懂、容易编写,而且执行的效率也高。[]5.一个广义表的表尾总是一个广义表。[]6.当从一个小根堆(最小堆)中删除一个元素时,需要把堆尾元素填补到堆顶位置,然后再按条件把它逐层向下调整,直到调整到合适位置为止。[]7.对于一棵具有n个结点,其高度为h的二叉树,进行任一种次序遍历的时间复杂度为O(h)。[]8.存储图的邻接矩阵中,邻接矩阵的大小不但与图的顶点个数有关,而且与图的边数也有关。[]9.直接选择排序是一种稳定的排序方法。[]10.30、闭散列法通常比开散列法时间效率更高。[]11.有n个结点的不同的二叉树有n!棵。[]12.直接选择排序是一种不稳定的排序方法。[]13.在2048个互不相同的关键码中选择最小的5个关键码,用堆排序比用锦标赛排序更快。[]14.当3阶B_树中有255个关键码时,其最大高度(包括失败结点层)不超过8。[]15.一棵3阶B_树是平衡的3路搜索树,反之,一棵平衡的3路搜索树是3阶非B_树。[]16.在用散列表存储关键码集合时,可以用双散列法寻找下一个空桶。在设计再散列函数时,要求计算出的值与表的大小m互质。[]17.在只有度为0和度为k的结点的k叉树中,设度为0的结点有n0个,度为k的结点有nk个,则有n0=nk+1。[]18.折半搜索只适用于有序表,包括有序的顺序表和有序的链表。[]19.如果两个串含有相同的字符,则这两个串相等。[]20.数组可以看成线性结构的一种推广,因此可以对它进行插入、删除等运算。[]21.在索引顺序表上实现分块查找,在等概率查找情况下,其平均查找长度不仅与表中元素个数有关,而且与每一块中元素个数有关。[]22.在顺序表中取出第i个元素所花费的时间与i成正比。[]23.在栈满情况下不能作进栈运算,否则产生“上溢”。[]24.二路归并排序的核心操作是将两个有序序列归并为一个有序序列。[]25.对任意一个图,从它的某个顶点出发,进行一次深度优先或广度优先搜索,即可访问图的每个顶点.[]26.二叉排序树或者是一棵空二叉树,或者不是具有下列性质的二叉树:若它的左子树非空,则根结点的值大于其左孩子的值;若它的右子树非空,则根结点的值小于其右孩子的值。[]27.在执行某个排序算法过程中,出现了排序码朝着最终排序序列位置相反方向移动,则该算法是不稳定的。[]28.一个有向图的邻接表和逆邻接表中表结点的个数一定相等。[]数据结构第2页二、选择题1.在一个长度为n的顺序表的任一位置插入一个新元素的渐进时间复杂度为[]A.O(n)B.O(n/2)C.O(1)D.O(n2)2.带头结点的单链表first为空的判定条件是:[]A.first==NULLB.first一1ink==NULLC.first一link==firstD.first!=NUlL3.当利用大小为n的数组顺序存储一个队列时,该队列的最大长度为[]A.n-2B.n-lC.nD.n+14.在系统实现递归调用时需利用递归工作记录保存实际参数的值。在传值参数情形,需为对应形式参数分配空间,以存放实际参数的副本;在引用参数情形,需保存实际参数的(),在被调用程序中可直接操纵实际参数。[]A.空间B.副本C.返回地址D.地址5.在一棵树中,[]没有前驱结点。A.分支结点D.叶结点C.树根结点D.空结点6.在一棵二叉树的二叉链表中,空指针域数等于非空指针域数加[]。A.2B.1C.0D.-17.对于长度为9的有序顺序表,若采用折半搜索,在等概率情况下搜索成功的平均搜索长度为[]的值除以9。A.20B.18C.25D.228.在有向图中每个顶点的度等于该顶点的[]。A.入度B.出度C.入度与出度之和D.入度与出度之差9.在基于排序码比较的排序算法中,[]算法的最坏情况下的时间复杂度不高于O(n1og2n)。A.起泡排序B.希尔排序C.归并排序D.快速排序10.当α的值较小时,散列存储通常比其他存储方式具有[]的查找速度。A.较慢B.较快C.相同D.不清楚11.设有一个含200个表项的散列表,用线性探查法解决冲突,按关键码查询时找到一个表项的平均探查次数不超过1.5,则散列表项应能够至少容纳[]个表项。(设搜索成功的平均搜索长度为ASL={1+l/(1一α)}/2,其中α为装填因子)A.400B.526C.624D.67612.堆是一个键值序列{k1,k2,…..kn},对I=1,2,….|_n/2_|,满足[]A.ki≤k2i≤k2i+1B.kik2i+1k2iC.ki≤k2i且ki≤k2i+1(2i+1≤n)D.ki≤k2i或ki≤k2i+1(2i+1≤n)13.若将数据结构形式定义为二元组(K,R),其中K是数据元素的有限集合,则R是K上[]A.操作的有限集合B.映象的有限集合数据结构第3页C.类型的有限集合D.关系的有限集合14.在长度为n的顺序表中删除第i个元素(1≤i≤n)时,元素移动的次数为[]A.n-i+1B.iC.i+1D.n-i15.若不带头结点的单链表的头指针为head,则该链表为空的判定条件是[]A.head==NULLB.head-next==NULLC.head!=NULLD.head-next==head16.引起循环队列队头位置发生变化的操作是[]A.出队B.入队C.取队头元素D.取队尾元素17.若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不可能出现的出栈序列是[]A.2,4,3,1,5,6B.3,2,4,1,6,5C.4,3,2,1,5,6D.2,3,5,1,6,418.字符串通常采用的两种存储方式是[]A.散列存储和索引存储B.索引存储和链式存储C.顺序存储和链式存储D.散列存储和顺序存储19.设主串长为n,模式串长为m(m≤n),则在匹配失败情况下,朴素匹配算法进行的无效位移次数为[]A.mB.n-mC.n-m+1D.n20.二维数组A[12][18]采用列优先的存储方法,若每个元素各占3个存储单元,且第1个元素的地址为150,则元素A[9][7]的地址为[]A.429B.432C.435D.43821.对广义表L=((a,b),(c,d),(e,f))执行操作tail(tail(L))的结果是[]A.(e,f)B.((e,f))C.(f)D.()22.下列图示的顺序存储结构表示的二叉树是[]数据结构第4页23.n个顶点的强连通图中至少含有[]A.n-1条有向边B.n条有向边C.n(n-1)/2条有向边D.n(n-1)条有向边24.对关键字序列(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,56,67,78,88,92)D.(19,23,67,56,34,78,92,88)25.若在9阶B-树中插入关键字引起结点分裂,则该结点在插入前含有的关键字个数为[]A.4B.5C.8D.926.由同一关键字集合构造的各棵二叉排序树[]A.其形态不一定相同,但平均查找长度相同B.其形态不一定相同,平均查找长度也不一定相同C.其形态均相同,但平均查找长度不一定相同D.其形态均相同,平均查找长度也都相同27.ISAM文件和VSAM文件的区别之一是[]A.前者是索引顺序文件,后者是索引非顺序文件B.前者只能进行顺序存取,后者只能进行随机存取C.前者建立静态索引结构,后者建立动态索引结构D.前者的存储介质是磁盘,后者的存储介质不是磁盘28.下列描述中正确的是[]A.线性表的逻辑顺序与存储顺序总是一致的B.每种数据结构都具备三个基本运算:插入、删除和查找C.数据结构实质上包括逻辑结构和存储结构两方面的内容D.选择合适的数据结构是解决应用问题的关键步骤29.下面程序段的时间复杂度是[]I=s=0While(sn){I++;s+=I;}数据结构第5页A.O(1)B.O(n)C.O(log2n)D.O(n^2)30.对于顺序表来说,访问任一节点的时间复杂度是[]A.O(1)B.O(n)C.O(log2n)D.O(n^2)31.在具有n个节点的双链表中做插入、删除运算,平均时间复杂度为[]A.O(1)B.O(n)C.O(log2n)D.O(n^2)32.经过下列运算后,QueueFront(Q)的值是[]InitQueue(Q);EnQueue(Q,a);EnQueue(Q,a);DeQueue(Q,x);A.aB.bC.1D.233.一个栈的入栈序列是a,b,c,则栈的不可能输出序列是[]A.acbB.abcC.bcaD.cab34.循环队列是空队列的条件是[]A.Q-rear==Q-frontB.(Q-rear+1)%maxsize==Q-frontC.Q-rear==0D.Q-front==035.设s3=IAM,s4=ATERCHER.则strcmp(s3,s4)=[]A.0B.小于0C.大于0D.不确定36.一维数组的元素起始地址loc[6]=1000,元素长度为4,则loc[8]为[]A.1000B.1004C.1008D.837.广义表((a,b),c,d)的表尾是[]A.aB.bC.(a,b)D.(c,d)38.对于二叉树来说,第I层上至多有____个节点[]A.2iB.2i-1C.2i-1D.2i-1-139.某二叉树的前序遍历序列为ABDGCEFH,中序遍历序列为DGBAECHF,则后序遍历序列为[]A.BDGCEFHAB.GDBECFHAC.BDGAECHFD.GDBEHFCA40.M叉树中,度为0的节点数称为[]A.根B.叶C.祖先D.子孙数据结构第6页41.已知一个图如下所示,若从顶点a出发按宽度搜索法进行遍历,则可能得到的一种顶点序列为[]42.堆的形状是一棵[]A.二叉排序树B.满二叉树C.完全二义树D.平衡二叉树43.排序方法中,从未排序序列中挑选元素,并将其依次放入已排序序列(初始时为空)的一端的方法,称为[]A.希尔排序B.归并排序C.插入排序D.选择排序44采用顺序查找方法查找长度为n的线性表时,每个元素的平均查找长度为[]A.nB.n/2C.(n+1)/2D.(n-1)/245.散列查找是由键值______确定散列表中的位置,进行存储或查找[]A.散列函数值B.本身C.平方D.相反数46.顺序文件的缺点是[]A.不利于修改B.读取速度慢C.只能写不能读D.写文件慢47.索引文件的检索方式是直接存取或按_____存取[]A.随机存取B.关键字C.间接D.散列三、填空题1.若频繁地对线性表进行插入与删除操作,该线性表应采用______________存储结构。2.在双链表中,每个结点有两个指针域,一个指向______,另一个指向_____。3.空格串是____,其长度等于____。4.一个图的表示法是唯一的,而表示法是不唯一的。5.对于长度为n的关键字有序的线性表,若进行顺序查找,则时间复杂度为____;若采用二分法查找,则时间复杂度为____;6.设线性表中元素的类型是实型,其首地址为1024,则线性表中第6个元素的存储位置是。7.对于顺序存储的栈,因为栈的空间是有限的,在进行运算时,可能发生栈的上溢,8.在进行运算时,可能发生栈的下溢。9.在双向链表中,每个结点有两个指针域,一个指向______,另一个指向_____。10.由一棵二叉树的前序序列和可唯一确定这棵二叉树。11.折半查找的存储结构仅限于____,且是____。12.对于
本文标题:数据结构复习题及答案
链接地址:https://www.777doc.com/doc-6209258 .html