(年)专升本十套数据结构(试题及标准答案)
- 格式:doc
- 大小:628.00 KB
- 文档页数:33
数据结构试卷(一)参考答案一、选择题(每题2分,共20分)1.A2.D3.D4.C5.C6.D7.D8.C9.D 10.A 二、填空题(每空1分,共26分)1. 正确性 易读性 强壮性 高效率2. O(n)3. 9 3 34. -1 3 4 X * + 2 Y * 3 / -5. 2n n-1 n+16. e 2e7. 有向无回路8. n(n-1)/2 n(n-1)9. (12,40) ( ) (74) (23,55,63) 10.增加111.O(log 2n) O(nlog 2n) 12.归并三、计算题(每题6分,共24分)1. 线性表为:(78,50,40,60,34,90)2. 邻接矩阵:⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡0111010101110111010101110邻接表如图11所示:图113. 用克鲁斯卡尔算法得到的最小生成树为: (1,2)3, (4,6)4, (1,3)5, (1,4)8, (2,5)10, (4,7)204. 见图12图124 4 4 4 4 2 2 25 552 2 8 84 352 83 4四、读算法(每题7分,共14分)1.(1)查询链表的尾结点(2)将第一个结点链接到链表的尾部,作为新的尾结点(3)返回的线性表为(a2,a3,…,a n,a1)2.递归地后序遍历链式存储的二叉树。
五、法填空(每空2分,共8 分)true BST->left BST->right六、编写算法(8分)int CountX(LNode* HL,ElemType x){ int i=0; LNode* p=HL;//i为计数器while(p!=NULL){ if (P->data==x) i++;p=p->next;}//while, 出循环时i中的值即为x结点个数return i;}//CountX数据结构试卷(二)参考答案一、选择题1.D2.B3.C4.A5.A6.C7.B8.C二、填空题1.构造一个好的HASH函数,确定解决冲突的方法2.stack.top++,stack.s[stack.top]=x3.有序4.O(n2),O(nlog2n)5.N0-1,2N0+N16.d/27.(31,38,54,56,75,80,55,63)8.(1,3,4,5,2),(1,3,2,4,5)三、应用题1.(22,40,45,48,80,78),(40,45,48,80,22,78)2.q->llink=p; q->rlink=p->rlink; p->rlink->llink=q; p->rlink=q;3.2,ASL=91*1+2*2+3*4+4*2)=25/94.树的链式存储结构略,二叉树略5.E={(1,3),(1,2),(3,5),(5,6),(6,4)}6.略四、算法设计题1.设有一组初始记录关键字序列(K1,K2,…,K n),要求设计一个算法能够在O(n)的时间复杂度内将线性表划分成两部分,其中左半部分的每个关键字均小于K i,右半部分的每个关键字均大于等于K i。
一、单选题(每题 2 分,共20分)1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.AOV网是一种()。
A.有向图B.无向图C.无向无环图D.有向无环图6.采用开放定址法处理散列表的冲突时,其平均查找长度()。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。
A.值B.函数C.指针D.引用8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。
A.行号B.列号C.元素值D.非零元素个数9.快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n)C.0(n) D.0(n2)10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N (M:N)的联系时,称这种结构为_____________________。
[试题分类]:专升本《数据结构》_08004150[题型]:单选[分数]:2个顶点的无向连通网的最小成本树,至少有()个边。
(n-1)(n-1)/2答案:C个顶点的连通无向图,至少有()个边。
(m-1)(m-1)/2答案:C3.空串的长度是()。
答案:A4.假设以数组A[0..n-1]存放循环队列的元素,其头指针front指向队头元素、尾指针rear 指向队尾元素一个,则在少用一个元素空间的前提下,队列空的判定条件为()。
A.(front+1)%n==rearB.(rear+1)%n==front+1==front==front答案:D5.可以采用()这种数据结构,实现二叉树的层次遍历运算。
A.集合B.栈C.队列D.树答案:C6.线性表的顺序存储结构是一种()的存储结构。
A.随机存取存取C.顺序存取D.索引存取答案:A7.采用带头结点双向链表存储的线性表,在删除一个元素时,需要修改指针()次。
答案:D8.队列的出队操作是指()操作。
A.队头删除B.队尾删除C.队头插入D.队尾插入答案:A9.在关键字序列(10,15,20,25,30)中,采用折半法查找25,关键字之间比较需要()次。
答案:B10.串下列关于串的叙述中,正确的是()。
个串的长度相等,则2个串相等B.替换操作可以实现字符的删除C.空串至少包一个空格D.一个串的长度至少是1答案:B11.若二叉树对应的二叉链表共有n个非空链域,则该二叉树有()个结点的二叉树。
+1答案:D12.下面叙述错误的是()。
A.在无向图的邻接矩阵中每行1的个数等于对应的顶点度B.借助于队列可以实现对二叉树的层遍历C.对于单链表进行插入操作过程中不会发生上溢现象D.栈的特点是先进后出答案:C13.算法是对某一类问题求解步骤的有限序列。
其中,()是算法具有的5个特性之一。
A.可读性B.有穷性C.正确性D.健壮性答案:B14.队列的入队操作是在()进行的。
A.任意位置B.指定位置C.队尾D.队头15.在关键字序列(10,15,20,25,30)中采用折半法查找20,依次与()关键字进行了比较。
一、单选题(每题 2 分,共20分)1. 1.对一个算法的评价,不包括如下(B)方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2. 2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行(A )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3. 3.对线性表,在下列哪种情况下应当采用链表表示?( B )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4. 4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35. 5.AOV网是一种(D)。
A.有向图B.无向图C.无向无环图D.有向无环图6. 6.采用开放定址法处理散列表的冲突时,其平均查找长度(B)。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.7.若需要利用形参直接访问实参时,应将形参变量说明为(D)参数。
A.值B.函数C.指针D.引用8.8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的(A)。
A.行号B.列号C.元素值D.非零元素个数9.9.快速排序在最坏情况下的时间复杂度为(D)。
A.O(log2n) B.O(nlog2n) C.0(n) D.0(n2)10.10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( C )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1. 1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N(M:N)的联系时,称这种结构为_____________________。
专升本数据结构试卷答案一、选择题(每题 2 分,共 30 分)1、在数据结构中,从逻辑上可以把数据结构分为()。
A 动态结构和静态结构B 紧凑结构和非紧凑结构C 线性结构和非线性结构D 内部结构和外部结构答案:C解析:数据结构从逻辑上分为线性结构和非线性结构。
线性结构是数据元素之间存在一对一的关系,如线性表、栈、队列等;非线性结构是数据元素之间存在一对多或多对多的关系,如树、图等。
2、以下数据结构中,()是非线性数据结构。
A 栈B 队列C 线性表D 二叉树答案:D解析:二叉树是一种非线性数据结构,每个节点最多有两个子节点。
栈、队列和线性表都属于线性数据结构。
3、一个顺序存储的线性表的第一个元素的存储地址是 100,每个元素的长度为 2,则第 5 个元素的地址是()。
A 108B 110C 106D 104答案:A解析:第一个元素地址为 100,每个元素长度为 2,所以第 5 个元素的地址为 100 + 2×(5 1) = 108。
4、在单链表中,增加头结点的目的是()。
A 方便运算的实现B 使单链表至少有一个结点C 标识表结点中首结点的位置D 说明单链表是线性表的链式存储实现答案:A解析:头结点的作用是方便运算的实现,比如在插入和删除操作时,可以避免对第一个元素的特殊处理。
5、设栈的顺序存储空间为 S(1:m),初始状态为 top = 0。
现经过一系列入栈与退栈运算后,top = 20,则当前栈中有()个元素。
A 20B 21C m 20D m 19答案:A解析:栈是一种先进后出的数据结构,top 指向栈顶元素的位置,top = 20 说明当前栈中有 20 个元素。
6、循环队列的存储空间为 Q(1:50),初始状态为 front = rear = 25。
经过一系列入队与退队运算后,front = 15,rear = 10,则循环队列中的元素个数为()。
A 5B 6C 16D 49答案:B解析:循环队列中元素个数的计算公式为:(rear front + 50) % 50。
数据结构试题及答案(10套)数据结构试题及答案(10套)根据您的需求,我为您准备了10套数据结构试题及答案。
每套试题包含以下几个部分:选择题、填空题、编程题及答案解析。
下面是试题的具体内容:第一套试题:选择题:1. 在数据结构中,什么是栈?A. 先进先出(FIFO)的数据结构B. 后进先出(LIFO)的数据结构C. 随机访问的数据结构D. 无序排列的数据结构2. 以下哪种操作与队列的特性不相符?A. 入队操作B. 出队操作C. 查找操作D. 获取队首元素填空题:1. ______ 是一种动态集合,支持插入、删除和查找等操作。
2. 在二叉搜索树中,中序遍历的结果是________。
编程题:实现一个栈的数据结构,并包含以下操作:- push(x):将元素 x 压入栈中- pop():删除栈顶的元素并返回该元素- top():获取栈顶元素的值- empty():检查栈是否为空答案解析:选择题:B、C填空题:1. 集合 2. 升序序列编程题:略第二套试题:选择题:1. 以下哪个数据结构是一种广度优先搜索的应用?A. 栈B. 队列C. 堆D. 链表2. 在链表中,如果要删除一个节点,只给出该节点的指针,那么需要通过什么方式完成删除操作?A. 直接删除该节点B. 指向该节点的前一个节点的指针C. 指向该节点的后一个节点的指针D. 无法完成删除操作填空题:1. 树是一种________的数据结构。
2. 二叉树每个节点最多有______个子节点。
编程题:实现一个队列的数据结构,并包含以下操作:- enqueue(x):将元素 x 入队- dequeue():删除队首的元素并返回该元素- peek():获取队首元素的值- is_empty():检查队列是否为空答案解析:选择题:B、B填空题:1. 分层组织 2. 2编程题:略(以下部分省略)通过以上的题目,您可以对数据结构的知识点进行综合练习和复习。
每套试题包含了不同难度和类型的题目,能够帮助您全面了解和掌握数据结构的概念和操作。
专升本)数据结构A卷参考答案:简答题1,数据结构是相互之间存在一种或多种特定关系的数据元素的集合.这种数据元素相互之间的关系称为结构.可以将数据结构形式化地定义为二元组:Data_Structure=(D,S)其中:D是数据元素的有限集,S是D上关系的有限集.数据结构课程主要讨论数据的逻辑结构,物理结构和操作三个方面的问题.2,算法的时间复杂度是指算法中各语句的频度之和T(n),其中频度指语句的执行次数,n指问题的规模,一般为数据的输入量.渐近时间复杂度:当问题的规模n趋于无穷大时,T(n)的数量级(阶).记为T(n)=O( f(n) ).这里"O"是一种近似表示法,其含义是:在n较大时,该算法的运行时间和f(n)成正比,或者说,T(n)的数量级和f(n)的数量级相同.实际中,将渐近时间复杂度简称为时间复杂度,用以描述算法的时间特性.3,顺序表的优点:(1)可直接求出存储地址(随机存储结构),结构简单,便于随机访问表中的任一元素.(2)存储密度高.顺序表的缺点:(1)不便于插入和删除.(移动元素次数多,平均约需移动一半元素)(2)不便于扩充表的容量.(3)不能有效地利用内存空间.单链表的优点:(1)结点空间可动态申请动态释放.(2)每个结点有指针域指示逻辑顺序,进行插入删除操作时不需移动元素.单链表的缺点:(1)不能随机访问表中任一元素,效率低.(2)存储量可随意扩充,但新增加的存储空间可能与以前的不邻接,故需要设立一些存放地址用的存储单元.4,入栈算法:int push (qstype *s, elemtype x){if (s→top==MAXNUM-1)return 0;else { s→top++;s→stack [s→top]=x;return 1; }}出栈算法:elemtype pop(qstype *s){if (s→topnext!=NULL)if (p->data!=p->next->data)p=p->next;else{ q=p->next;p->next=q->next;free(q);}}return head;}2,#define m 100typedef struct btreenode{ elemtype data;struct btreenode *left;struct btreenode *right;} btree; /*二叉链表的形式化定义*/ void postorder(btree * b){btree * stack[m],*p;int tag[m],top=0;p=b;do{while (p!=NULL){ top++;stack[top]=p;tag[top]=0;p=p->left;}if (top>0){ p=stack[top];if (tag[top]==1){ top--;printf("%d",p->data);}if (top>0){ p=p->right;tag[top]=1;}}}while (p!=NULL&&top!=0)}。
[试题分类]旁升本《数据结构》_08004150圉型]单选份数]: 2个顶点的无向连通网的最小成本树,至少有()个边。
(n-1)(n-1)/2答案:C个顶点的连通无向图,至少有()个边。
(m-1)(m1)/2答案:C3. 空串的长度是()。
答案:A4. 假设以数组A[O .. n1]存放循环队列的元素,其头指针fr o n t指向队头元素、尾指针re a r指向队尾元素一个,则在少用一个元素空间的前提下,队列空的判定条件为()。
A{ f ro n t+ 1) %n==re a rB { re a r+1) %n==fro n tl==fron t==fro n t答案:D5. 可以采用()这种数据结构,实现二叉树的层次遍历运算。
A集合B栈C. 队列D树答案:C6钱性表的顺序存储结构是一种()的存储结构。
A随机存取存取C顺序存取D索引存取答案:A7. 采用带头结点双向链表存储的线性表,在删除一个元素时,需要修改指针()次。
答案:D8. 队列的出队操作是指()操作。
A. 队头删除B队尾删除C. 队头插入D. 队尾插入答案:A9在关键字序列C l O,15,20,25, :}O中,采用折半法查找25,关键字之间比较需要()次。
答案:B10.串下列关于串的叙述中,正确的是()。
个串的长度相等,则2个串相等B.替换操作可以实现字符的删除C.空串至少包一个空格D. 一个串的长度至少是1答案:B11. 若二叉树对应的二叉链表共有n个非空链域,则该二叉树有()个结点的二叉树。
+l答案:D12. 下面叙述错误的是()。
A在无向图的邻接矩阵中每行1的个数等于对应的顶点度B借助于队列可以实现对二叉树的层遍历C对于单链表进行插入操作过程中不会发生上溢现象D. 栈的特点是先进后出答案:C13. 算法是对某一类问题求解步骤的有限序列。
其中,()是算法具有的5个特性之一。
A. 可读性B有穷性C. 正确性D健壮性答案:B14. 队列的入队操作是在()进行的。
1一、单项选择题1.算法指的是( D ) D .解决问题的有限运算序列2.线性表采用链式存储时,结点的存储地址( B )B .连续与否均可3.将长度为n 的单链表链接在长度为m 的单链表之后的算法的时间复杂度为( C )A .O (1)B .O (n )C .O (m )D .O (m+n )4.由两个栈共享一个向量空间的好处是:( B ) B .节省存储空间,降低上溢发生的机率5.设数组data[m]作为循环队列SQ 的存储空间,front 为队头指针,rear 为队尾指针,则执行出队操作后其头指针front 值为( D ) D .front=(front+1)%m6.如下陈述中正确的是( A ) A .串是一种特殊的线性表7.若目标串的长度为n ,模式串的长度为[n/3],则执行模式匹配算法时,在最坏情况下的时间复杂度是( C ) C .O (n 2)8.一个非空广义表的表头( D ) D .可以是子表或原子9对应的稀疏矩阵是( A ) ⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡--00000405000000076080.A10.在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( C ) C .611.在含n 个顶点和e 条边的无向图的邻接矩阵中,零元素的个数为( D ) D .n 2-2e12.假设一个有n 个顶点和e 条弧的有向图用邻接表表示,则删除与某个顶点v i 相关的所有弧的时间复杂度是( C ) C .O(n+e)13.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是( D ) D .快速排序14.适于对动态查找表进行高效率查找的组织结构是( C ) C .三叉排序树15.不定长文件是指(B ) B .记录的长度不固定二、填空题 16.数据的逻辑结构是从逻辑关系上描述数据,它与数据的 存储(存储结构) 无关,是独立于计算机的。
数据结构试题及答案(10套最新)数据结构试题及答案(10套最新)第一套试题:问题一:什么是数据结构?数据结构的作用是什么?回答:数据结构是一种组织和存储数据的方式,它关注数据元素之间的关系以及对数据元素的操作。
数据结构的作用包括提供高效的数据存储和访问方式,减少资源消耗,简化问题的解决方法,提高算法的性能和程序的可读性。
问题二:请列举几种常见的线性数据结构,并简要介绍它们的特点。
回答:常见的线性数据结构包括数组、链表和栈。
数组是一种连续存储数据元素的结构,具有随机访问的特点;链表是一种通过指针相连的数据元素,可以灵活地插入和删除元素;栈是一种遵循先进后出原则的数据结构,常用于解决递归问题。
问题三:请说明二叉树的定义及其性质。
回答:二叉树是一种特殊的树形数据结构,每个节点最多有两个子节点。
二叉树具有以下性质:每个节点最多有两个子节点,分别称为左子节点和右子节点;左子树和右子树都是二叉树;二叉树的节点个数为n,边的个数为n-1。
问题四:在数组中查找一个元素的时间复杂度是多少?为什么?回答:在数组中查找一个元素的时间复杂度是O(n),其中n是数组的长度。
因为在数组中查找元素需要按照索引一个一个比较,最坏情况下需要比较n次才能找到目标元素。
问题五:请解释堆排序算法的原理及时间复杂度。
回答:堆排序算法利用堆这种数据结构进行排序。
首先将待排序的元素构建成一个大顶堆,然后将堆顶元素与最后一个元素交换,继续调整堆,再取出堆顶元素与倒数第二个元素交换,依次执行,最后得到从小到大排序的序列。
堆排序的时间复杂度为O(nlogn)。
第二套试题:问题一:请解释图的邻接矩阵和邻接表表示法。
回答:图的邻接矩阵表示法是使用二维数组来表示图的连接关系,数组中的元素表示相应节点之间的边的关系。
邻接表表示法使用链表来表示图的连接关系,链表中的元素表示相邻节点之间的边的关系。
问题二:请说明深度优先搜索算法的原理及其应用。
回答:深度优先搜索(DFS)算法是一种遍历或搜索图的算法,其原理是从起始节点开始,依次深入到尽可能远的节点,直到无法继续深入为止,然后回溯到上一个节点,再继续深入其他未访问过的节点。
4. A.队列 B.栈设有一个二维数组 A[m][ n],假设 676(1。
),每个元素占一个空间,问 制表示。
B . 678C . 692D . 696 5.树最适合用来表示()。
B.无序数据元素D.元素之间无联系的数据D. 2k-1A. 1 B . 2 C. 3D. 4 数据结构试卷(一) ..................... 1 数据结构试卷(二) ..................... 4 数据结构试卷(三) ..................... 6 数据结构试卷(四) ..................... 8 数据结构试卷(五) .................... 11 数据结构试卷(六) .................... 14 数据结构试卷(七) .................... 16 数据结构试卷(八) .................... 18 数据纟吉构试卷(九) .................. 20 数据纟吉构试卷(十) (23)数据吉构试卷(一)参考答案 ........... 26 数据吉构试卷(二)参考答案 ........... 27 数据结构试卷(三)参考答案 ........... 28 数据结构试卷(四)参考答案 ........... 30 数据结构试卷(五)参考答案 ........... 32 数据结构试卷(六)参考答案 ........... 33 数据吉构试卷(七)参考答案 ........... 36 数据吉构试卷(八)参考答案 ........... 37 数据结构试卷(九)参考答案 ........... 38 数据结构试卷(十)参考答案 .. (39)数据结构试卷(一)、单选题(每题2分,共20分) 1. 栈和队列的共同特点是()。
A. 只允许在端点处插入和删除元素B. 都是先进后出C. 都是先进先出D. 没有共同点2. 用链接方式存储的队列,在进行插入运算时 ().A.仅修改头指针B.头、尾指针都要修改C.仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?()C.线性表D.二叉树A[0][0]存放位置在644(10),A[2][2]存放位置在 A[3][3] (10)存放在什么位置?脚注(10)表示用10进C.元素之间具有分支层次关系的数据6.二叉树的第k 层的结点数最多为(). A . 2k-1B.2K+1C.2K-17. 若有18个元素的有序表存放在一维数组 A[19]中,第一个元素放 A[1]中,现进行二分查找,则查找 A :3]的比较序列的下标依次为( )A. 1, 2, 3B. 9, 5, 2, 3C. 9, 5, 3D. 9, 4, 2, 38. 对n 个记录的文件进行快速排序,所需要的辅助存储空间大致为A. 0( 1)B. O (n )C. 0( 1og 2n )D. O (n2)9. 对于线性表(7, 34, 55, 25, 64, 46, 20, 10)进行散列存储时,若选用 H (K )=K %9作为散列函数,则散列地址为 1的元素有( )个,10.设有6个结点的无向图,该图至少应有 ( )条边才能确保是一个连通图。
数据结构试卷(一) 1数据结构试卷(二) 4 数据结构试卷(三) 6 数据结构试卷(四) 8 数据结构试卷(五) 11 数据结构试卷(六) 14 数据结构试卷(七) 16 数据结构试卷(八) 18 数据结构试卷(九) 20 数据结构试卷(十)23数据结构试卷(一)参考答案 (26)数据结构试卷(二)参考答案 ............ 27 数据结构试卷(三)参考答案 ............ 28 数据结构试卷(四)参考答案 ............ 30 数据结构试卷(五)参考答案 ............ 32 数据结构试卷(六)参考答案 ........... 33 数据结构试卷(七)参考答案 ............ 36 数据结构试卷(八)参考答案 ........... 37 数据结构试卷(九)参考答案 ........... 38 数据结构试卷(十)参考答案 (39)数据结构试卷(一)、单选题(每题 2分,共20分)1.栈和队列的共同特点是()。
A. 只允许在端点处插入和删除元素B. 都是先进后出C. 都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时().A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?()A.队列B.栈C.线性表D.二叉树4.设有一个二维数组 A[m][ n],假设 A[0][0]存放位置在 644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
分查找,则查找 A : 3]的比较序列的下标依次为()A. 1 , 2, 3B. 9 , 5, 2, 3C. 9, 5, 3D. 9 , 4, 2, 3A . 688B . 6785.树最适合用来表示()。
A.有序数据元素C.元素之间具有分支层次关系的数据 6. 二叉树的第k 层的结点数最多为().kA . 2 -1 B.2K+1 C.2K-1C . 692D . 696B.无序数据元素D.元素之间无联系的数据D. 2k-17. 若有18个元素的有序表存放在一维数组A[19]中,第一个元素放 A[1]中,现进行二8.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为B. O ( n)C. O (1og2n)D. O ( n2)A. O (1)9. 对于线性表(7, 34, 55, 25, 64, 46, 20, 10)进行散列存储时,若选用 H (K ) =K %9作为散列函数,则散列地址为 1的元素有( )个, A . 1 B . 2 C . 3 D . 410.设有6个结点的无向图,该图至少应有 ()条边才能确保是一个连通图。
数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈与队列得共同特点就是().A、只允许在端点处插入与删除元素B、都就是先进后出C、都就是先进先出D、没有共同点2.用链接方式存储得队列,在进行插入运算时( )、A、仅修改头指针B、头、尾指针都要修改C、仅修改尾指针 D、头、尾指针可能都要修改3.以下数据结构中哪一个就是非线性结构?( )A、队列B、栈C、线性表D、二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678C。
692 D.6965.树最适合用来表示()。
A、有序数据元素B、无序数据元素C、元素之间具有分支层次关系得数据D、元素之间无联系得数据6.二叉树得第k层得结点数最多为( )、A.2k-1 B、2K+1 C、2K—1 D、2k-17.若有18个元素得有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]得比较序列得下标依次为( )A、1,2,3 ﻩﻩB、9,5,2,3C、9,5,3ﻩﻩﻩD、9,4,2,38.对n个记录得文件进行快速排序,所需要得辅助存储空间大致为A、 O(1)B、 O(n) C、O(1og2n) D、 O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1得元素有( )个,A。
1 B。
2 C。
3 D。
410.设有6个结点得无向图,该图至少应有( )条边才能确保就是一个连通图。
A、5B、6C、7D、8二、填空题(每空1分,共26分)1.通常从四个方面评价算法得质量:_________、_________、_________与_________。
2.一个算法得时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
一、单选题(每题 2 分,共20分)1.对一个算法的评价,不包括如下(B )方面的内容。
A.健壮性和可读性B.并行性C.正确性D.时空复杂度2.在带有头结点的单链表HL中,要向表头插入一个由指针p指向的结点,则执行( )。
A. p->next=HL->next; HL->next=p;B. p->next=HL; HL=p;C. p->next=HL; p=HL;D. HL=p; p->next=HL;3.对线性表,在下列哪种情况下应当采用链表表示?( )A.经常需要随机地存取元素B.经常需要进行插入和删除操作C.表中元素需要占据一片连续的存储空间D.表中元素的个数不变4.一个栈的输入序列为1 2 3,则下列序列中不可能是栈的输出序列的是( C )A. 2 3 1B. 3 2 1C. 3 1 2D. 1 2 35.AOV网是一种()。
A.有向图B.无向图C.无向无环图D.有向无环图6.采用开放定址法处理散列表的冲突时,其平均查找长度()。
A.低于链接法处理冲突 B. 高于链接法处理冲突C.与链接法处理冲突相同D.高于二分查找7.若需要利用形参直接访问实参时,应将形参变量说明为()参数。
A.值B.函数C.指针D.引用8.在稀疏矩阵的带行指针向量的链接存储中,每个单链表中的结点都具有相同的()。
A.行号B.列号C.元素值D.非零元素个数9.快速排序在最坏情况下的时间复杂度为()。
A.O(log2n) B.O(nlog2n)C.0(n) D.0(n2)10.从二叉搜索树中查找一个元素时,其时间复杂度大致为( )。
A. O(n)B. O(1)C. O(log2n)D. O(n2)二、运算题(每题 6 分,共24分)1.数据结构是指数据及其相互之间的______________。
当结点之间存在M对N (M:N)的联系时,称这种结构为_____________________。
专升本《数据结构》专升本《数据结构》一、〔共75题,共150分〕1.数据的逻辑结构是由〔〕局部组成的。
〔2分〕A.2B.3C.4D.5标准答案:A2.算法是对某一类问题求解步骤的有限序列,并具有〔〕个特性。
〔2分〕A.3B.4C.5D.6标准答案:C3.队列的入队操作是在〔〕进行的。
〔2分〕A.队头B.队尾C.任意位置D.指定位置标准答案:B4.队列的出队操作是在〔〕进行的。
〔2分〕A.队头B.队尾C.任意位置D.指定位置标准答案:A5.数组通常采用顺序存储的优点是〔〕。
〔2分〕A.便于增加存储空间B.便于依据下标进行随机存取C.防止数据元素的移动D.防止下标溢出标准答案:B6.以下给出的操作中,〔〕是允许对队列进行的操作。
〔2分〕A.删除队首元素B.取出最近进队的元素C.按元素大小排序D.中间插入元素标准答案:A7.采用带头结点的单链表存储的线性表,假设表长为n在删除第号元素时,需要移动指针〔〕次。
〔2分〕A.k+1B.kC.k-1D.k-2标准答案:C8.字符数组a[1..100]采用顺序存储,a[6]地址是517,那么a的首地址为〔〕。
〔2分〕A.510B.512C.514D.516标准答案:B9.深度为n的完全二叉树最多有〔〕个结点。
〔2分〕A.2n+1B.2n-1C.2nD.2n-1标准答案:D10.假设二叉树对应的二叉链表共有n个非空链域,那么该二叉树有〔〕个结点的二叉树。
〔2分〕A.n-1B.nC.n+1D.2n标准答案:A11.下面表达错误的选项是〔〕。
〔2分〕A.借助于队列可以实现对图的广度优先遍历B.二叉树中序遍历的序列是有序C.只有一个结点的二叉树的度为0D.空格串是指由1个或以上的空格符号组成的串标准答案:B12.以下与数据的存储结构无关的术语是〔〕。
〔2分〕A.循环队列B.链表C.哈希表D.栈标准答案:D13.在一个长度为n的链式栈中入栈实现算法的时间复杂度为〔〕。
〔2分〕A.O(1)B.O(logn)C.O(n)D.标准答案:A14.在具有n个度数为2的二叉树中,必有〔〕个叶子结点。
1一、单项选择题1.算法指的是( D ) D .解决问题的有限运算序列2.线性表采用链式存储时,结点的存储地址( B )B .连续与否均可3.将长度为n 的单链表链接在长度为m 的单链表之后的算法的时间复杂度为( C )A .O (1)B .O (n )C .O (m )D .O (m+n)4.由两个栈共享一个向量空间的好处是:( B ) B .节省存储空间,降低上溢发生的机率5.设数组data[m]作为循环队列SQ 的存储空间,front 为队头指针,rear 为队尾指针,则执行出队操作后其头指针front 值为( D ) D .front=(front+1)%m6.如下陈述中正确的是( A ) A .串是一种特殊的线性表7.若目标串的长度为n,模式串的长度为[n/3],则执行模式匹配算法时,在最坏情况下的时间复杂度是( C ) C .O (n 2)8.一个非空广义表的表头( D ) D .可以是子表或原子9对应的稀疏矩阵是( A ) ⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡--00000405000000076080.A10.在一棵度为3的树中,度为3的结点个数为2,度为2 的结点个数为1,则度为0的结点个数为( C ) C .611.在含n 个顶点和e 条边的无向图的邻接矩阵中,零元素的个数为( D ) D .n 2-2e12.假设一个有n 个顶点和e 条弧的有向图用邻接表表示,则删除与某个顶点v i 相关的所有弧的时间复杂度是( C ) C .O(n+e)13.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是( D ) D .快速排序14.适于对动态查找表进行高效率查找的组织结构是( C ) C .三叉排序树15.不定长文件是指(B ) B .记录的长度不固定二、填空题16.数据的逻辑结构是从逻辑关系上描述数据,它与数据的 存储(存储结构) 无关,是独立于计算机的.17.在一个带头结点的单循环链表中,p 指向尾结点的直接前驱,则指向头结点的指针head可用p 表示为head= p —〉next —>next 。
数据结构试卷(一)一、单选题(每题2 分,共20分)1.栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素B.都是先进后出C.都是先进先出D.没有共同点2.用链接方式存储的队列,在进行插入运算时( ).A. 仅修改头指针B. 头、尾指针都要修改C. 仅修改尾指针D.头、尾指针可能都要修改3.以下数据结构中哪一个是非线性结构?( )A. 队列B. 栈C. 线性表D. 二叉树4.设有一个二维数组A[m][n],假设A[0][0]存放位置在644(10),A[2][2]存放位置在676(10),每个元素占一个空间,问A[3][3](10)存放在什么位置?脚注(10)表示用10进制表示。
A.688 B.678 C.692 D.6965.树最适合用来表示( )。
A.有序数据元素B.无序数据元素C.元素之间具有分支层次关系的数据D.元素之间无联系的数据6.二叉树的第k层的结点数最多为( ).A.2k-1 B.2K+1 C.2K-1 D. 2k-17.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为( )A. 1,2,3B. 9,5,2,3C. 9,5,3D. 9,4,2,38.对n个记录的文件进行快速排序,所需要的辅助存储空间大致为A. O(1)B. O(n)C. O(1og2n)D. O(n2)9.对于线性表(7,34,55,25,64,46,20,10)进行散列存储时,若选用H(K)=K %9作为散列函数,则散列地址为1的元素有()个,A.1 B.2 C.3 D.410.设有6个结点的无向图,该图至少应有( )条边才能确保是一个连通图。
A.5B.6C.7D.8二、填空题(每空1分,共26分)1.通常从四个方面评价算法的质量:_________、_________、_________和_________。
2.一个算法的时间复杂度为(n3+n2log2n+14n)/n2,其数量级表示为________。
3.假定一棵树的广义表表示为A(C,D(E,F,G),H(I,J)),则树中所含的结点数为__________个,树的深度为___________,树的度为_________。
4.后缀算式9 2 3 +- 10 2 / -的值为__________。
中缀算式(3+4X)-2Y/3对应的后缀算式为_______________________________。
5.若用链表存储一棵二叉树时,每个结点除数据域外,还有指向左孩子和右孩子的两个指针。
在这种存储结构中,n个结点的二叉树共有________个指针域,其中有________个指针域是存放了地址,有________________个指针是空指针。
6.对于一个具有n个顶点和e条边的有向图和无向图,在其对应的邻接表中,所含边结点分别有_______个和________个。
7.AOV网是一种___________________的图。
8.在一个具有n个顶点的无向完全图中,包含有________条边,在一个具有n个顶点的有向完全图中,包含有________条边。
9.假定一个线性表为(12,23,74,55,63,40),若按Key % 4条件进行划分,使得同一余数的元素成为一个子表,则得到的四个子表分别为____________________________、___________________、_______________________和__________________________。
10.向一棵B_树插入元素的过程中,若最终引起树根结点的分裂,则新树比原树的高度___________。
11.在堆排序的过程中,对任一分支结点进行筛运算的时间复杂度为________,整个堆排序过程的时间复杂度为________。
12.在快速排序、堆排序、归并排序中,_________排序是稳定的。
三、计算题(每题6 分,共24分)1.在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试写出该线性表。
A 0 1 2 3 4 5 6 7data 60 50 78 90 34 40next 3 5 7 2 0 4 12.请画出下图的邻接矩阵和邻接表。
3.已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7};E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15,(3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25};用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。
4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的变化。
四、阅读算法(每题7分,共14分)1.LinkList mynote(LinkList L){//L是不带头结点的单链表的头指针if(L&&L->next){q=L;L=L->next;p=L;S1:while(p->next) p=p->next;S2:p->next=q;q->next=NULL;}return L;}请回答下列问题:(1)说明语句S1的功能;(2)说明语句组S2的功能;(3)设链表表示的线性表为(a1,a2, …,a n),写出算法执行后的返回值所表示的线性表。
2.void ABC(BTNode * BT){if BT {ABC (BT->left);ABC (BT->right);cout<<BT->data<<' ';}}该算法的功能是:五、算法填空(共8分)二叉搜索树的查找——递归算法:bool Find(BTreeNode* BST,ElemType& item){if (BST==NULL)return false; //查找失败else {if (item==BST->data){item=BST->data;//查找成功return ___________;}else if(item<BST->data)return Find(______________,item);else return Find(_______________,item);}//if}六、编写算法(共8分)统计出单链表HL中结点的值等于给定值X的结点数。
int CountX(LNode* HL,ElemType x)数据结构试卷(二)一、选择题(24分)1.下面关于线性表的叙述错误的是()。
(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有()个空指针域。
(A) 2m-1 (B) 2m (C) 2m+1 (D) 4m3.设顺序循环队列Q[0:M-1]的头指针和尾指针分别为F和R,头指针F总是指向队头元素的前一位置,尾指针R总是指向队尾元素的当前位置,则该循环队列中的元素个数为()。
(A) R-F (B) F-R (C) (R-F+M)%M (D) (F-R+M)%M4.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为()。
(A) BADC (B) BCDA (C) CDAB (D) CBDA5.设某完全无向图中有n个顶点,则该完全无向图中有()条边。
(A) n(n-1)/2 (B) n(n-1) (C) n2(D) n2-16.设某棵二叉树中有2000个结点,则该二叉树的最小高度为()。
(A) 9 (B) 10 (C) 11 (D) 127.设某有向图中有n个顶点,则该有向图对应的邻接表中有()个表头结点。
(A) n-1 (B) n (C) n+1 (D) 2n-18.设一组初始记录关键字序列(5,2,6,3,8),以第一个记录关键字5为基准进行一趟快速排序的结果为()。
(A) 2,3,5,8,6 (B) 3,2,5,8,6(C) 3,2,5,6,8 (D) 2,3,6,5,8二、填空题(24分)1.为了能有效地应用HASH查找技术,必须解决的两个问题是____________________和__________________________。
2.下面程序段的功能实现数据x进栈,要求在下划线处填上正确的语句。
typedef struct {int s[100]; int top;} sqstack;void push(sqstack &stack,int x){if (stack.top==m-1) printf(“overflow”);else {____________________;_________________;}}3.中序遍历二叉排序树所得到的序列是___________序列(填有序或无序)。
4.快速排序的最坏时间复杂度为___________,平均时间复杂度为__________。
5.设某棵二叉树中度数为0的结点数为N0,度数为1的结点数为N1,则该二叉树中度数为2的结点数为_________;若采用二叉链表作为该二叉树的存储结构,则该二叉树中共有_______个空指针域。
6.设某无向图中顶点数和边数分别为n和e,所有顶点的度数之和为d,则e=_______。
7.设一组初始记录关键字序列为(55,63,44,38,75,80,31,56),则利用筛选法建立的初始堆为___________________________。
8.已知一有向图的邻接表存储结构如下:从顶点1出发,DFS遍历的输出序列是,BFS遍历的输出序列是三、应用题(36分)1.设一组初始记录关键字序列为(45,80,48,40,22,78),则分别给出第4趟简单选择排序和第4趟直接插入排序后的结果。
2.设指针变量p指向双向链表中结点A,指针变量q指向被插入结点B,要求给出在结点A 的后面插入结点B的操作序列(设双向链表中结点的两个指针域分别为llink和rlink)。
3.设一组有序的记录关键字序列为(13,18,24,35,47,50,62,83,90),查找方法用二分查找,要求计算出查找关键字62时的比较次数并计算出查找成功时的平均查找长度。
4.设一棵树T中边的集合为{(A,B),(A,C),(A,D),(B,E),(C,F),(C,G)},要求用孩子兄弟表示法(二叉链表)表示出该树的存储结构并将该树转化成对应的二叉树。