c数据结构考试题及答案_第1页
c数据结构考试题及答案_第2页
c数据结构考试题及答案_第3页
c数据结构考试题及答案_第4页
c数据结构考试题及答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

c数据结构考试题及答案

一、单项选择题(每题2分,共10题)1.在单链表中,增加头结点的目的是()。A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现答案:A2.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表答案:A3.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5和e6依次通过栈S,一个元素出栈后即进队列Q,若6个元素出列的顺序是e2,e4,e3,e6,e5,e1,则栈S的容量至少应该是()。A.6B.4C.3D.2答案:C4.串是一种特殊的线性表,其特殊性体现在()。A.可以顺序存储B.数据元素是一个字符C.可以链式存储D.数据元素可以是多个字符答案:B5.二叉树第i(i≥1)层上至多有()结点。A.2^iB.2^(i-1)C.2^i-1D.2^(i+1)答案:B6.具有n个结点的完全二叉树的深度为()。A.⌊log₂n⌋B.⌈log₂n⌉C.⌊log₂n⌋+1D.⌈log₂n⌉+1答案:C7.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为()。A.O(1)B.O(n)C.O(1og₂n)D.O(n²)答案:A8.若一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方法建立的初始堆为()。A.79,46,56,38,40,84B.84,79,56,38,40,46C.84,79,56,46,40,38D.84,56,79,40,46,38答案:B9.下面关于图的存储的叙述中,正确的是()。A.用邻接矩阵法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关B.用邻接矩阵法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关C.用邻接表法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关D.用邻接表法存储图,占用的存储空间数只与图中边数有关,而与结点个数无关答案:A10.对有n个顶点、e条边且使用邻接表存储的有向图进行广度优先遍历,其算法时间复杂度是()。A.O(n)B.O(e)C.O(n+e)D.O(n²)答案:C二、多项选择题(每题2分,共10题)1.线性表的顺序存储结构具有以下特点()。A.逻辑相邻的数据元素在物理位置上也相邻B.可以随机存取表中的任一元素C.插入和删除操作不需要移动大量元素D.存储密度大E.不便于进行插入和删除操作答案:ABDE2.栈的操作特点是()。A.先进先出B.后进先出C.进栈必须判满D.出栈必须判空E.栈顶元素可随机修改答案:BD3.队列的操作特点是()。A.先进先出B.后进先出C.入队必须判满D.出队必须判空E.队首元素可随机修改答案:ACD4.串的模式匹配算法有()。A.朴素的模式匹配算法B.改进的模式匹配算法C.KMP算法D.哈希算法E.归并算法答案:ABC5.二叉树的遍历方式有()。A.先序遍历B.中序遍历C.后序遍历D.层次遍历E.逆序遍历答案:ABCD6.以下属于二叉排序树的特点的是()。A.左子树上所有结点的值均小于根结点的值B.右子树上所有结点的值均大于根结点的值C.左右子树也分别为二叉排序树D.中序遍历二叉排序树得到的序列是有序序列E.先序遍历二叉排序树得到的序列是有序序列答案:ABCD7.排序算法的稳定性是指()。A.经过排序之后,能使值相同的数据保持原顺序中的相对位置不变B.经过排序之后,值相同的数据相对位置可能改变C.排序算法的时间复杂度是稳定的D.排序算法的空间复杂度是稳定的E.不同的排序算法稳定性不同答案:AE8.以下属于内部排序算法的是()。A.冒泡排序B.快速排序C.希尔排序D.归并排序E.堆排序答案:ABCDE9.图的存储结构有()。A.邻接矩阵B.邻接表C.十字链表D.邻接多重表E.边集数组答案:ABCDE10.深度优先遍历可以用于()。A.有向图B.无向图C.连通图D.非连通图E.以上都可以答案:E三、判断题(每题2分,共10题)1.线性表中的数据元素可以是各种各样的,但同一线性表中的元素必须具有相同的特性。()答案:对2.顺序表中逻辑上相邻的元素物理上不一定相邻。()答案:错3.栈是一种对进栈、出栈操作总次数做了限制的线性表。()答案:错4.队列是一种后进先出的线性表。()答案:错5.串是一种特殊的线性表,其特殊性体现在数据元素可以是多个字符。()答案:错6.二叉树中每个结点的度最大为2。()答案:对7.二叉排序树的查找和折半查找的时间复杂度相同。()答案:错8.快速排序是一种稳定的排序算法。()答案:错9.图的邻接矩阵表示法是唯一的。()答案:对10.无向图的邻接表表示法中,每条边在邻接表中出现两次。()答案:对四、简答题(每题5分,共4题)1.简述顺序表和链表的优缺点。答案:顺序表优点:可随机存取、存储密度大。缺点:插入和删除操作需移动大量元素,预先分配空间,容易造成空间浪费或溢出。链表优点:插入和删除操作不需要移动大量元素,可灵活分配空间。缺点:不能随机存取,存储密度相对较小。2.简述栈和队列的区别。答案:栈是后进先出结构,操作主要是进栈和出栈,且操作只能在栈顶进行。队列是先进先出结构,操作有入队和出队,入队在队尾进行,出队在队首进行。3.简述二叉树的性质。答案:性质1:二叉树第i(i≥1)层上至多有2^(i-1)个结点;性质2:深度为k(k≥1)的二叉树至多有2^k-1个结点;性质3:对任何一棵二叉树T,如果其终端结点数为n0,度为2的结点数为n2,则n0=n2+1。4.简述堆排序的基本思想。答案:堆排序是利用堆这种数据结构所设计的一种排序算法。首先将待排序序列构建成一个堆(大顶堆或小顶堆),然后将堆顶元素与堆尾元素交换,再对除堆尾元素外的序列重新调整为堆,如此反复直到整个序列有序。五、讨论题(每题5分,共4题)1.讨论线性表在不同存储结构下进行查找操作的效率。答案:顺序表可随机查找,时间复杂度为O(1),顺序查找时间复杂度为O(n)。链表只能顺序查找,时间复杂度为O(n),但链表不需要预先分配大量连续空间。2.讨论二叉树的应用场景。答案:二叉树可用于表达式求值、哈夫曼编码等。在表达式求值中,可将表达式转换为二叉树形式进行计算。哈夫曼编码中,二叉树可构建哈夫曼树以实现高效的编码。3.讨论排序算法选择的依据。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论