2007级《数据结构》期末考试题答案

合集下载

邯郸学院数据结构A卷答案(本科2007级)

邯郸学院数据结构A卷答案(本科2007级)

邯郸学院2008-2009学年第一学期2007级计算机科学与技术专业本科期末考试试卷(A )答案及评分标准课程名称: 数据结构 任课教师: 司玲玲 考试时间: 120 分钟一、单项选择题(每题2分,共20分)1. C2. D3. C4. D5. B6. B7. D8. A9. B 10. A每题正确得2分,错误不得分。

二、判断题(每题1分,共10分) 1.ⅹ 2. ⅹ 3. √ 4. ⅹ 5.√ 6.ⅹ7. √8. √9.ⅹ10.√每题正确得1分,错误不得分。

三、填空题(每题2分,共20分) 1. 树型结构 图状结构 2. O(1) O(n) 3. SXSSXSXX 4. 字符 串长相等且对应位置上的字符也相等 5. Head(Tail(Head(Tail(L)))) 6. G 7. 2 1 8. 左子树 右子树 9. O(n) 10. 比较 交换每题正确得2分(只有1空的题1空占2分,有2空的题1空1分),错误不得分。

四、应用题(每题6分,共30分) 1.(1)⎝⎛-00280250000018016000 ⎪⎪⎪⎪⎪⎭⎫0000⎝⎛-0051025000002200032⎪⎪⎪⎪⎪⎭⎫00690 (2) ((1,1,32),(2,2,-4),(2,5,69),(4,2,79))正确画出一个矩阵得2分,二个均正确得4分,写出正确的三元组表得2分,部分正确则酌情给分。

2.(1) (2)正确画出邻接矩阵得3分,正确画出邻接表得3分(邻接表中结点顺序可不与参考答案一致),部分正确则酌情给分。

3.(2)WPL=7*4+19*2+2*5+6*4+32*2+3*5+21*2+10*4=261画出的赫夫曼树符合构造原理即可得4分(不要求与参考答案完全一致),部分正确则酌情给分(1—3分),正确列出计算WPL 值的公式得1分,结果正确得1分。

4. H(13)=1+13%7=7 H(15)=1+15%7=2 H(22)=1+22%7=2 冲突 H 1(22)=(2+3)%8=5 H(8)=1+8%7=2 冲突 H 1(8)=(2+3)%8=5 冲突 H 2(8)=(2+6)%8=0H(34)=1+34%7=7 冲突 H 1(34)=(7+3)%8=2 冲突 H 2(8)=(7+6)%8=5 冲突 H 3(8)=(7+9)%8=0 冲突 H 4(8)=(7+12)%8=3H(19)=1+19%7=6 01234567写出详细计算步骤并正确得4分,画出表得2分,部分正确则酌情给分。

数据结构试卷及答案

数据结构试卷及答案

期末考试《数据结构》A 卷一、单项选择题(请将正确答案的字母填写在每 题对应的括号内,每小题1分,共20分)1、下面关于串的叙述中,哪一个是不正确的?()A .串是字符的有限序列B .空串是由空格构成的串C .模式匹配是串的一种重要运算D .串既可以采用顺序存储,也可以采用链式存储 2、设无向图的顶点个数为n ,则该图最多有()条边。

A . n-1B . n(n-1)/2C . n(n+1)/2D . 0 3、以下数据结构中,()是非线性数据结构。

A .树B .字符串C .队列D .栈4、下面关于线性表的叙述中,错误的是哪一个?()A .线性表采用顺序存储,必须占用一片连续的存储单元。

B .线性表采用顺序存储,便于进行插入和删除操作。

C .线性表采用链接存储,不必占用一片连续的存储单元。

D .线性表采用链接存储,便于插入和删除操作。

5、假设以数组A[m]存放循环队列的元素,其头尾指针分别为front 和rear ,则当前队列中的元素个数为()。

A . (rear-front+m)%mB . rear-front+1C . (front-rear+m)%mD . (rear-front)%m6、在单链表指针为p 的结点之后插入指针为s 的结点,正确的操作是()。

A . p->next=s; s->next=p->next;B . s->next=p->next; p->next=s;C . p->next=s; p->next=s->next;D . p->next=s->next; p->next=s; 7、设栈的输入序列是1, 2, 3, 4,则()不可能是其出栈序列。

A .1,2,4,3 B .2,1,3,4C .1,4,3,2D .4,3,1,2,8、广义表(a,(b,c),d,e )的表头和表尾分别为()。

A . a 和(b,c),d,eB . (a )和(b,c),d,eC . a 和((b,c), d,e)D . (a) 和((b,c), d,e)得分评卷人二、判断题,在正确的题后括号内打“J”,在错误的题后括号内打“X”(每小题1分,共10分)1、算法是由若干条指令组成的有穷序列,而一个程序不一定满足有穷性。

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案一、单项选择题1. 数据结构是计算机科学的基础学科之一。

下列哪个选项正确描述了数据结构的定义?A. 数据结构是一种计算机程序B. 数据结构是一种存储和组织数据的方法C. 数据结构是一种人工智能技术D. 数据结构是一种操作系统答案:B2. 链表和数组是常见的数据结构,它们之间的主要区别是:A. 数组可以存储不同类型的数据,而链表只能存储相同类型的数据B. 数组的元素在内存中是连续存储的,而链表的元素在内存中是分散存储的C. 链表可以随机访问元素,而数组只能顺序访问元素D. 链表的插入和删除操作更高效,而数组的访问操作更高效答案:B3. 在二叉树中,每个节点最多可以有多少个子节点?A. 1B. 2C. 3D. 无限多个答案:B二、填空题1. 假设有一组数据 [5, 8, 3, 2, 9],按照从小到大的顺序进行冒泡排序的过程中,经过三次交换后的结果是__2__,__3__,__5__,__8__,__9__。

2. 请完成以下代码,实现栈的入栈和出栈操作:```pythonclass Stack:def __init__(self):self.stack = []def push(self, item):self.stack.append(item)def pop(self):if not self.is_empty():return self.stack.pop()def is_empty(self):# 示例代码s = Stack()s.push(1)s.push(2)s.push(3)print(s.pop()) # 输出 3print(s.pop()) # 输出 2print(s.is_empty()) # 输出 False ```答案:```pythonclass Stack:def __init__(self):self.stack = []def push(self, item):self.stack.append(item)def pop(self):if not self.is_empty():def is_empty(self):return len(self.stack) == 0# 示例代码s = Stack()s.push(1)s.push(2)s.push(3)print(s.pop()) # 输出 3print(s.pop()) # 输出 2print(s.is_empty()) # 输出 False```三、简答题1. 请简要介绍树的基本概念及常见的树结构。

数据结构期末考试题及答案

数据结构期末考试题及答案

数据结构期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,算法的时间复杂度是指()。

A. 执行算法所需要的计算工作量B. 执行算法所需要的存储空间C. 执行算法所需要的时间D. 执行算法所需要的内存大小答案:A2. 线性表的顺序存储结构和链式存储结构相比,其优点是()。

A. 插入和删除操作快B. 存储密度高C. 存储空间可以动态分配D. 存储空间利用率高答案:B3. 栈的基本运算中,不包括()。

A. 入栈B. 出栈C. 取栈顶元素D. 排序答案:D4. 在二叉树的遍历中,先序遍历的顺序是()。

A. 先根后子B. 先子后根C. 先左后右D. 先右后左答案:A5. 哈希表解决冲突的方法不包括()。

A. 分离链接法B. 线性探测法C. 链地址法D. 二分查找法答案:D6. 一个图的邻接矩阵表示法中,若第i行第j列的元素为1,则表示()。

A. 顶点i和顶点j之间有一条边B. 顶点i和顶点j之间没有边C. 顶点i和顶点j之间有n条边D. 顶点i和顶点j之间有m条边答案:A7. 在查找算法中,二分查找法适用于()。

A. 线性表B. 哈希表C. 树形结构D. 图结构答案:A8. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(n)B. O(nlogn)C. O(n^2)D. O(2^n)答案:C9. 一个有n个顶点的无向图,其边数最多为()。

A. nB. n(n-1)/2C. n(n+1)/2D. 2n答案:B10. 以下哪个不是排序算法()。

A. 冒泡排序B. 选择排序C. 插入排序D. 归并排序答案:D二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法执行过程中所需要的___________。

答案:存储空间2. 线性表的链式存储结构中,每个节点包含___________和___________。

答案:数据元素,指针3. 栈的特点是___________,___________。

数据结构期末考试试题及答案

数据结构期末考试试题及答案

数据结构期末考试试题及答案一、选择题1. 以下哪种数据结构是线性存储结构?A. 树B. 图C. 栈D. 队列答案:C2. 在链表中,如果一个节点既没有前驱也没有后继,那么这个节点被称作什么?A. 首节点B. 尾节点C. 中间节点D. 孤立节点答案:B3. 树的度是指什么?A. 树中节点的个数B. 树中最大的层次数C. 树的分支数D. 树的节点的度的最大值答案:C4. 在二叉搜索树中,若要查找给定值的节点,当查找失败时应返回的值是?A. -1B. 0C. 1D. 该值本身答案:A5. 快速排序算法的时间复杂度最坏情况下是多少?A. O(n)B. O(nlogn)C. O(n^2)D. O(n!)答案:C二、填空题1. 在顺序表中,元素的物理位置相邻的特点是________,这使得顺序表在________操作上具有较高的效率。

答案:连续性;访问2. 链表相比顺序表的优势在于它能够动态地________存储空间,并且________操作不需要移动大量元素。

答案:分配和释放;插入与删除3. 栈是一种________的数据结构,只允许在________进行插入和删除操作。

答案:后进先出;栈顶4. 图的遍历算法主要有两种,分别是________和________。

答案:深度优先搜索;广度优先搜索5. 哈夫曼树是一种特殊的二叉树,它常用于数据压缩,其构建过程是基于________原则。

答案:最小权值三、简答题1. 请简述数组和链表的优缺点。

答案:数组通过索引直接访问元素,访问速度快,但大小固定,插入和删除操作需要移动大量元素。

链表元素通过指针连接,可以动态分配大小,插入和删除效率高,但访问速度较慢,因为需要从头开始遍历。

2. 什么是二叉树的前序遍历、中序遍历和后序遍历?答案:二叉树的前序遍历是先访问根节点,然后遍历左子树,最后遍历右子树。

中序遍历是先遍历左子树,然后访问根节点,最后遍历右子树。

后序遍历是先遍历左子树,然后遍历右子树,最后访问根节点。

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案第一部分:选择题(每题2分,共20分)1. 下面哪个数据结构是线性结构?A. 树B. 图C. 队列D. 网络流2. 下面哪个数据结构用于实现广度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆3. 下面哪个数据结构用于实现深度优先搜索算法?A. 栈B. 队列C. 散列表D. 堆4. 下面哪个数据结构用于实现快速排序算法?A. 栈B. 队列C. 散列表D. 堆5. 下面哪个数据结构用于实现优先队列?A. 栈B. 队列C. 散列表D. 堆6. 下面哪个数据结构用于实现哈希表?A. 栈B. 队列C. 散列表D. 堆7. 下面哪个数据结构用于实现最小树算法?A. 栈B. 队列C. 散列表D. 堆8. 下面哪个数据结构用于实现拓扑排序算法?A. 栈B. 队列C. 散列表D. 堆9. 下面哪个数据结构用于实现最短路径算法?A. 栈B. 队列C. 散列表D. 堆10. 下面哪个数据结构用于实现并查集算法?A. 栈B. 队列C. 散列表D. 堆第二部分:填空题(每题2分,共20分)1. 链表是一种______数据结构。

2. 二叉树的节点最多有______个子节点。

3. 堆是一种特殊的______。

4. 散列表的查找效率取决于______。

5. 图的遍历算法包括______和______。

6. 快速排序算法的平均时间复杂度为______。

7. 哈希表中的冲突解决方法有______和______。

8. 最小树算法包括______和______。

9. 最短路径算法包括______和______。

10. 并查集算法用于解决______问题。

第三部分:简答题(每题10分,共50分)1. 请简述栈和队列的区别。

2. 请简述二叉搜索树的特点。

3. 请简述哈希表的原理。

4. 请简述图的深度优先搜索算法。

5. 请简述最小树算法的原理。

第四部分:编程题(每题20分,共50分)1. 编写一个函数,实现链表的插入操作。

2007《数据结构》期末试卷_A_答案

2007《数据结构》期末试卷_A_答案

一、(本题10分)(1)简述线性表的两种存储结构的主要优缺点及各自适用的场合。

(2)在折半查找和表插入排序中,记录分别应使用哪种存储结构,并用一句话简述理由。

答:(1)顺序存储是按索引(如数组下标)来存取数据元素,优点是可以实现快速的随机存取,缺点是插入与删除操作将引起元素移动,降低效率。

对于链式存储,元素存储采取动态分配,利用率高。

缺点是须增设指针域,存储数据元素不如顺序存储方便。

优点是插入与删除操作简单,只须修改指针域。

(2)在折半查找中,记录使用顺序存储,可以快速实现中点的定位;在表插入排序中,记录使用静态链表,可以降少移动记录的操作。

二、(本题15分)在带头结点的非空线性链表中,试设计一算法,将链表中数据域值最小的那个结点移到链表的最前面,其余各结点的顺序保持不变。

要求:不得额外申请新的链结点。

解:程序如下:typedef struct node {int data;struct node * next;}Node,*LinkList;void MinFirst(LinkList L){Node *p,*q,*ptrmin;if(L->next == NULL) return; //空表ptrmin = L; //ptrmin指向当前最小结点的前一个结点p = L->next;//p指向当前结点的前一个结点while(p->next!=NULL) {if( p->next->data < ptrmin->next->data ) ptrmin = p;p = p->next;}//q指向最小结点,并从链表中删除q = ptrmin->next; ptrmin->next = q->next;q->next = L->next; L->next = q; //q指向的最小结点插入到链表头}三、(本题15分)编写函数判断一棵二叉树是否不含有度为1的结点,若任何结点的度都不为1,则返回TRUE,否则返回FALSE。

DS-2007级参考答案

DS-2007级参考答案

2006级(嵌入式软件与系统、计算机应用方向)《数据结构》期终考试试卷答案一、单项选择题 (每题1分,共15分)答案:C, A, B, B, C, D, D, C, D, A, B, B, A, C, A二、已知一个无向图的顶点集为{ a , b , c , d , e , f },其邻接矩阵如下所示(0-无边,1-有边)。

⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡00110001101110110111010001101010010fe d c b af e d c b a(1). 画出该图的图形;(2). 根据邻接矩阵从顶点a 出发进行广度优先遍历,画出相应的广度优先遍历树。

(15分) 解:(1). 该邻接矩阵所对应的的图2.1所示(2). 从顶点a 出发进行广度优先遍历的遍历树如图2.2所示三、已知一个散列表如下图所示:其散列函数为h (key ) = key % 13,处理冲突的方法为双重散列法,探查序列为:h i = (h (key ) + i * 3) % 13, i = 1, 2, …问:对表中关键字61进行查找时,所需进行的比较次数为多少?依次写出每次的计算公式和值。

(10分)解:在表中查找关键字61时,所需进行的计算公式如下:h (61) = 61 % 13 = 9h 1 = (9 + 1 * 3) % 13 = 12图2.1 图2.2 a b e d f ch 2 = (9 + 2 * 3) % 13 = 15 % 13 = 2由上过程可知:在表中查找关键字61时,需要进行3次比较。

四、阅读下面程序,回答问题 (10分)void function(Link **Head) {Link *pt1, *pt2, *tmp; pt1 = *Head;if (pt1 == NULL) return;pt2 = pt1->next; pt1->next = NULL;// 语句行S 1while (pt2 != NULL) { tmp = pt2->next;pt2->next = pt1; pt1 = pt2; pt2 = tmp; }*Head = pt1;// 语句行S 2}回答下列问题:(1). 说明语句行S 1和S 2的作用(指对单向链表中所起的作用);(2). 简洁地给出函数function 的功能描述(非每条语句的语义说明);(3). 若链表Head 的线性表形式为(a 1, a 2, …, a n ),写出函数执行后链表Head 的线性表形式。

数据结构期末考试题及答案

数据结构期末考试题及答案

数据结构期末考试题及答案一、选择题(每题2分,共10题)1. 数据结构是指()A. 存储和组织数据的方式B. 对数据进行计算和处理的方法C. 数据的物理表示形式D. 数据的逻辑结构答案:A. 存储和组织数据的方式2. 在数据结构中,栈是一种()A. 先进先出的数据结构B. 后进先出的数据结构C. 随机存取的数据结构D. 按键值查找的数据结构答案:B. 后进先出的数据结构3. 下列哪种数据结构不支持随机访问?()A. 队列B. 栈C. 数组D. 链表答案:D. 链表4. 在二叉树中,每个节点最多可以有几个子节点?()A. 0B. 1C. 2D. 无限多答案:C. 25. 在图的表示方法中,邻接矩阵适用于()A. 稠密图B. 稀疏图C. 有向图D. 无向图答案:A. 稠密图6. 下列排序算法中,最坏情况时间复杂度为O(nlogn)的是()A. 冒泡排序B. 插入排序C. 快速排序D. 选择排序答案:C. 快速排序7. 广度优先搜索算法用于()A. 求最短路径B. 求全排列C. 求最小生成树D. 求图的连通分量答案:A. 求最短路径8. 哈希表的查找时间复杂度为()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:A. O(1)9. AVL树是一种()A. 无序树B. 有序树C. 平衡树D. 非平衡树答案:C. 平衡树10. 以下哪个不属于基本的查找算法?()A. 二分查找B. 插值查找C. 散列查找D. 顺序查找答案:C. 散列查找二、填空题(每题4分,共4题)11. 下列不是线性表的是()答案:二叉树12. 在冒泡排序中,每一轮的比较次数是________答案:n-113. 在堆排序中,堆的建立时间复杂度为________答案:O(n)14. 从一个顶点到其余各顶点的最短路径算法是________答案:Dijkstra算法三、简答题(每题10分,共3题)15. 请简要说明栈的应用场景,并给出一个具体实例。

数据结构20071期末试卷b卷

数据结构20071期末试卷b卷

期末考试试卷(B)卷2007 ——2008 学年第一学期课程名称:数据结构适用年级/专业: 06/计应、计教试卷类别开卷()闭卷(√)学历层次本科考试用时 120分钟《.考生.......................》...注意:答案要全部抄到答题纸上,做在试卷上不给分一、单项选择(每小题2分,共20分)()1.以下数据结构中,()是非线性数据结构。

A.树 B.字符串 C.队 D.栈()2.下面关于线性表的叙述中,错误的是哪一个?A.线性表采用顺序存储,必须占用一片连续的存储单元。

B.线性表采用顺序存储,便于进行插入和删除操作。

C.线性表采用链接存储,不必占用一片连续的存储单元。

D.线性表采用链接存储,便于插入和删除操作。

()3.对于栈操作数据的原则是()。

A. 先进先出B. 后进先出C. 后进后出D. 不分顺序()4.最大容量为n的循环队列,队尾指针是rear,队头是front,则队空的条件是()。

A. (rear+1) % n=frontB. rear=front C.rear+1=front D. (rear-l) % n=front()5.数组A[0..4,-1..-3,5..7]中含有元素的个数()。

A. 55B. 45C. 36D. 16。

()6.串是一种特殊的线性表,其特殊性体现在:A.可以顺序存储B.数据元素是一个字符C.可以链式存储D.数据元素可以是多个字符()7.已知某二叉树的后序遍历序列是dabec, 中序遍历序列是debac , 它的前序遍历是()。

A.acbed B.decab C.deabc D.cedba()8.关键路径是事件结点网络中()。

A.从源点到汇点的最长路径 B.从源点到汇点的最短路径C.最长回路 D.最短回路()9.链表适用于查找A.顺序 B.二分法 C.顺序,也能二分法 D.随机()10.在排序算法中,每次从未排序的记录中挑出最小(或最大)关键码字的记录,加入到已排序记录的末尾,该排序方法是()。

《数据结构》期末考试试卷(含答案)

《数据结构》期末考试试卷(含答案)

《数据结构》期末考试试卷(含答案)《数据结构》期末考试试卷( A )一、选择题(每小题2分,共24分)1.计算机识别、存储和加工处理的对象被统称为( A )A.数据B.数据元素C.数据结构D.数据类型2.栈和队列都是(A)A.限制存取位置的线性结构B.顺序存储的线性结构C.链式存储的线性结构D.限制存取位置的非线性结构3.链栈与顺序栈相比,比较明显的优点是( D )A.插入操作更加方便B.删除操作更加方便C.不会出现下溢的情况D.不会出现上溢的情况4.采用两类不同存储结构的字符串可分别简称为( B )A.主串和子串B.顺序串和链串C.目标串和模式串D.变量串和常量串5.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是:BA. 110 B .108C. 100D. 1206.串是一种特殊的线性表,其特殊性体现在:BA.可以顺序存储 B .数据元素是一个字符C. 可以链接存储D. 数据元素可以是多个字符7.设高度为h的二叉树上只有度为0和度为2的结点,则此类二叉树中所包含的结点数至少为:CA. 2h B .2h-1C. 2h+1D. h+1软件开发网/doc/d818218954.html,8.树的基本遍历策略可分为先根遍历和后根遍历;二叉树的基本遍历策略可分为先序遍历、中序遍历和后序遍历。

这里,我们把由树转化得到的二叉树叫做这棵树对应的二叉树。

下列结论哪个正确?AA. 树的先根遍历序列与其对应的二叉树的先序遍历序列相同B .树的后根遍历序列与其对应的二叉树的后序遍历序列相同C. 树的先根遍历序列与其对应的二叉树的中序遍历序列相同D. 以上都不对9.一个有n个顶点的无向图最多有多少边?CA. n B .n(n-1)C. n(n-1)/2D. 2n10.在一个图中,所有顶点的度数之和等于所有边数的多少倍?CA. 1/2 B .1C. 2D. 411.当在二叉排序树中插入一个新结点时,若树中不存在与待插入结点的关键字相同的结点,且新结点的关键字小于根结点的关键字,则新结点将成为(A)A.左子树的叶子结点B.左子树的分支结点C.右子树的叶子结点D.右子树的分支结点软件开发网/doc/d818218954.html,12.对于哈希函数H(key)=key%13,被称为同义词的关键字是( D )A.35和41B.23和39C.15和44D.25和51二、已知某棵二叉树的前序遍历结果为A,B,D,E,G,C,F,H,I,J,其中中序遍历的结果为D,B,G,E,A,H,F,I,J,C。

2007数据结构试题A(答案)

2007数据结构试题A(答案)

中国人民公安大学2006~2007学年第二学期2005级侦查学专业计算机犯罪侦查专业方向《数据结构》期末考试卷(A卷)参考答案及评分标准一、判断题(正确的打“V”,错的打“X”。

每小题1分,共10分)1.(v)双向链表中至多只有一个结点的后继指针为空。

2.(x)在循环队列中,front指向队列中第一个元素的前一位置,rear指向实际的队尾元素,队列为满的条件是front=rear。

3.(v)对链表进行插入和删除操作时,不必移动结点。

4.(v)栈可以作为实现程序设计语言过程调用时的一种数据结构。

5.(x) 在一个有向图的拓扑序列中,若顶点a在顶点b之前,则图中必有一条弧<a,b>。

6.(x ) 对有向图G,如果从任一顶点出发进行一次深度优先或广度优先搜索就能访问每个顶点,则该图一定是完全图。

7.(x)“顺序查找法”是指在顺序表上进行查找的方法。

8.(v) 向二叉排序树插入一个新结点时,新结点一定成为二叉排序树的一个叶子结点。

9.(v)关键字序列{A,C,D,E,F,E,F}是一个堆。

10.(x)二路归并时,被归并的两个子序列中的关键字个数一定要相等。

二、填空题:(每小题2分,共 20分)1.一棵含有101个结点的完全二叉树存储在数组A[1..101]中, 对1≤k≤101, 若A[k]是非叶结点, 则k的最小值是:1。

2.设s=’YOU ARE JUDGING IT RIGHT OR WRONG’,顺序执行下列操作:SubString(sub1,s,1,8); SubString(sub2,s,20,5); StrCat(sub1,sub2);则最后sub1的值为:’YOU ARE RIGHT’。

3.若一个算法中的语句频度之和为T(n) = 3720n+4nlogn,则算法的时间复杂度为_ O(nlogn) ___ 。

4.广义表((((a),b),c),d)的表头是(((a),b),c) ,表尾是(d) 。

数据结构期末试题及答案

数据结构期末试题及答案

《数据结构》期末考试试卷一、选择题(单选题,每小题3分,共33分)1.已知某二叉树的中序、层序序列分别为DBAFCE、FDEBCA,则该二叉树的后序序列为 B 。

A.BCDEAF B.ABDCEF C.DBACEF D.DABECF 2.在11个元素的有序表A[1…11]中进行折半查找(⎣⎦2/)low+),查找元素(highA[11]时,被比较的元素的下标依次是 B 。

A.6,8,10,11 B.6,9,10,11 C.6,7,9,11 D.6,8,9,113.由元素序列(27,16,75,38,51)构造平衡二叉树,则首次出现的最小不平衡子树的根(即离插入结点最近且平衡因子的绝对值为2的结点)为 D 。

A.27 B.38 C.51 D.754.利用逐点插入法建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素30要进行 B 次元素间的比较。

A.4 B.5 C.6 D.75.循环链表的主要优点是 D 。

A.不再需要头指针了B.已知某个结点的位置后,很容易找到它的直接前驱结点C.在进行删除后,能保证链表不断开D.从表中任一结点出发都能遍历整个链表6.已知一个线性表(38,25,74,63,52,48),假定采用散列函数h(key)=key%7计算散列地址,并散列存储在散列表A[0…6]中,若采用线性探测方法解决冲突,则在该散列表上进行等概率查找时查找成功的平均查找长度为 C 。

A.1.5 B.1.7 C.2.0 D.2.37.由权值为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为C 。

A.23 B.37 C.44 D.468.在最好和最坏情况下的时间复杂度均为O(nlogn)且稳定的排序方法是 D 。

A.基数排序B.快速排序C.堆排序D.归并排序9.无向图G=(V,E),其中V={a,b,c,d,e,f},E={(a,b),(a,e),(a,c),(b,e),(c,f),(f,d),(e,d)}。

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案一、选择题(每题2分,共20分)1. 下列哪种数据结构是线性结构?A. 栈B. 树C. 队列D. 图答案:A2. 在计算机科学中,什么是最基本的数据结构?A. 数组B. 链表C. 栈D. 树答案:C3. 下列哪种操作的时间复杂度是O(1)?A. 在链表中插入元素B. 在数组中查找元素C. 在树中删除节点D. 在图中寻找最短路径答案:B4. 下列哪种数据结构常常用于实现栈和队列?A. 数组B. 链表C. 树D. 图答案:A5. 下列哪种数据结构是有序的?A. 栈B. 队列C. 链表D. 图答案:C二、填空题(每题2分,共20分)1. 在数据结构中,栈是一种后进先出(____)的数据结构。

答案:线性表2. 队列是一种先进先出(____)的数据结构。

答案:线性表3. 链表是一种____数据结构,由一系列节点组成。

答案:非线性4. 二叉树是一种特殊的树,它的每个节点最多有两个____。

答案:子节点5. 哈希表是通过____函数将关键字映射到表中的位置来访问数据。

答案:哈希三、判断题(每题2分,共20分)1. 树是一种线性结构。

()答案:错误2. 链表的插入和删除操作时间复杂度都是O(1)。

()答案:错误3. 图是一种线性结构。

()答案:错误4. 哈希表是一种基于顺序结构的的数据结构。

()答案:错误5. 在数据结构中,时间复杂度O(n)表示算法随着输入规模的增加而线性增长。

()答案:正确四、简答题(每题10分,共30分)1. 请简述栈和队列的特点和应用场景。

答案:栈是一种后进先出(LIFO)的数据结构,应用场景包括函数调用栈、表达式求值等。

队列是一种先进先出(FIFO)的数据结构,应用场景包括任务队列、缓冲区等。

2. 请简述链表的优缺点。

答案:链表的优点包括动态扩容、插入和删除操作时间复杂度为O(1)、可以方便地实现各种复杂数据结构。

缺点包括占用内存空间较大、不如数组支持随机访问。

数据结构期末考试试卷及答案

数据结构期末考试试卷及答案

数据结构期末考试试卷及答案一、选择题(每题2分,共20分)1. 下列哪一个不是线性结构的特点?A. 有且只有一个根结点B. 每个结点最多有一个前驱和一个后继C. 有多个根结点D. 有且只有一个叶子结点答案:C2. 在单链表中,头结点的作用是()A. 作为链表的起点B. 作为链表的终点C. 存储链表中的数据元素D. 作为链表中的第一个元素答案:A3. 在顺序表中,插入一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:B4. 下列哪种排序算法的平均时间复杂度最高?A. 冒泡排序B. 快速排序C. 直接插入排序D. 希尔排序答案:C5. 在二叉树中,具有3个结点的二叉树有()种不同的形态。

A. 2B. 3C. 4D. 5答案:C6. 下列哪种情况不适合使用哈希表?A. 查找速度快B. 数据量较大C. 数据量较小D. 数据元素关键字分布均匀答案:C7. 在图的遍历过程中,下列哪种遍历方法属于深度优先遍历?A. 广度优先遍历B. 深度优先遍历C. 混合遍历D. 随机遍历答案:B8. 下列哪种数据结构不适用于实现栈?A. 顺序表B. 链表C. 树D. 图答案:C9. 在双向链表中,删除一个元素的时间复杂度是()A. O(1)B. O(n)C. O(logn)D. O(n^2)答案:A10. 下列哪种情况不适合使用队列?A. 数据元素先进先出B. 数据元素后进先出C. 数据元素随机进出D. 数据元素按顺序进出答案:B二、填空题(每题2分,共20分)1. 线性表是具有______个数据元素的有限序列。

答案:n2. 在单链表中,每个结点包含两个域:数据域和______域。

答案:指针3. 在顺序表中,插入一个元素的时间复杂度是______。

答案:O(n)4. 快速排序的平均时间复杂度为______。

答案:O(nlogn)5. 哈希表中的冲突指的是______。

答案:不同的关键字对应同一存储位置6. 在图的遍历过程中,深度优先遍历算法使用的数据结构是______。

数据结构期末考试题及答案

数据结构期末考试题及答案

数据结构期末考试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性结构的特点是()。

A. 元素之间存在一对一关系B. 元素之间存在一对多关系C. 元素之间存在多对多关系D. 元素之间存在一对一对关系答案:A2. 栈(Stack)是一种特殊的线性表,其特点是()。

A. 只能在一端进行插入和删除操作B. 只能在一端进行插入操作,另一端进行删除操作C. 两端都可以进行插入和删除操作D. 只能在一端进行删除操作答案:B3. 在二叉树中,若某结点的左子树非空,则其左子树中任一结点的值()。

A. 小于该结点的值B. 大于该结点的值C. 等于该结点的值D. 与该结点的值无关答案:A4. 哈希表的冲突解决方法中,开放定址法的基本思想是()。

A. 将发生冲突的元素插入到表的末尾B. 将发生冲突的元素插入到表的首部C. 将发生冲突的元素插入到表的任意位置D. 将发生冲突的元素插入到表的下一个空位答案:D5. 快速排序算法的时间复杂度在最坏情况下是()。

A. O(nlogn)B. O(n^2)C. O(n)D. O(1)答案:B6. 归并排序算法的时间复杂度是()。

A. O(nlogn)B. O(n^2)C. O(n)D. O(1)答案:A7. 在图的遍历中,深度优先搜索(DFS)使用的是()。

A. 队列B. 栈C. 链表D. 数组答案:B8. 广度优先搜索(BFS)使用的是()。

A. 队列B. 栈C. 链表D. 数组答案:A9. 在图的表示方法中,邻接矩阵适用于表示()。

A. 稀疏图B. 稠密图C. 无向图D. 有向图答案:B10. 最小生成树的Kruskal算法中,边的选取是基于()。

A. 边的权重B. 边的编号C. 边的长度D. 边的类型答案:A二、填空题(每题2分,共20分)1. 在数据结构中,一个算法的空间复杂度是指算法执行过程中需要的___________。

答案:存储空间的大小2. 顺序表的存储结构是使用___________连续的存储单元依次存储数据元素。

数据结构期末考试试题及答案

数据结构期末考试试题及答案

数据结构期末考试试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性结构的特点是什么?A. 元素之间存在一对一的关系B. 元素之间存在一对多的关系C. 元素之间存在多对多的关系D. 元素之间存在一对一或多对多的关系2. 栈(Stack)是一种特殊的线性表,其特点是:A. 允许在表的任一位置进行插入和删除操作B. 只能在表的首端进行插入和删除操作C. 只能在表的末端进行插入和删除操作D. 插入和删除操作没有特定的限制3. 以下哪个算法是排序算法?A. 快速排序B. 深度优先搜索C. 广度优先搜索D. 二分查找4. 哈希表解决冲突的常用方法不包括:A. 开放寻址法B. 链地址法C. 二分查找法D. 再散列法5. 在图的遍历算法中,深度优先搜索(DFS)使用的是:A. 栈B. 队列C. 链表D. 树...(此处省略其他选择题)二、简答题(每题10分,共30分)1. 请简述二叉树的三种遍历方法及其特点。

2. 什么是平衡二叉树?请说明它与普通二叉树的区别。

3. 解释什么是图的邻接矩阵表示法和邻接表表示法,并比较它们的优缺点。

三、计算题(每题15分,共30分)1. 给定一个数组A[1...n],请写出一个时间复杂度为O(n)的算法,找出数组中的最大值和最小值。

2. 假设有一个链表,链表中的节点按照值递增的顺序排列,请设计一个算法删除链表中所有重复的节点。

四、编程题(每题20分,共20分)1. 编写一个函数,实现二叉搜索树的插入操作,并保证树的平衡。

数据结构期末考试答案一、选择题1. C2. B3. A4. C5. A...(此处省略其他选择题答案)二、简答题1. 二叉树的三种遍历方法包括前序遍历、中序遍历和后序遍历。

前序遍历首先访问根节点,然后递归遍历左子树,最后递归遍历右子树。

中序遍历首先递归遍历左子树,然后访问根节点,最后递归遍历右子树。

后序遍历首先递归遍历左子树,然后递归遍历右子树,最后访问根节点。

数据结构07A答案

数据结构07A答案

考试答案不得超过此线安庆师范学院2008—2009学年度第一学期期末考试试卷《数据结构》(A卷)答案一、选择题(每题2分,共30分)。

1、B2、C3、A4、C5、C6、C7、B8、B9、D 10、D 11、B 12、B 13、D 14、D 15、C二、填空题(共9题,共15分)1、362、O(1)、O(logn)3、2614、cdefde5、p->piror s->piror->next=s6、LS=LS->next free(p)或者delete(p)7、(40,38,46,56,79,84) 8、(a) (a) 9、 3三、读算法,写结果(每小题4分,共8分)1、2、(说明:只绘出如下图,也给4分)算法实现带头结点的单链表L的就地逆置。

四、应用题(共6小题,共37分)1、(说明:只有序列,加3分;绘制如下图,得4分)(1)根的确定:由后序序列可知其最后一个(即A)为根………(1分)(2)左右子树的确定:由中序序列,根A左边的子序列(即C D)为其左子树(3个结点,其中1个未知),右边的子序列(即GHF)为其右子树(4个结点,其中1个未知)……………………………(3分)最后的结果,如下图:2、考试答案不得超过此线3、4、(1)散列表构造及其查找成功的比较次数………………(2分)(2)计算成功时的平均查找长度…………………………(2分)ASL=(5×1+3×2+1×4)/9=15/9(3)计算查找不成功时的比较次数………………………(2分)计算不成功时的平均查找长度ASL=(3+2+1+8+7+6+5+4+3+2+1)/11=42/115、所求得的MST 为……………………………………………(3分)6、(1)计算next 值……………………………………………(3分)1A 3(2)画出KMP 的匹配过程………………………………(5分) 第一趟:A DB A D A B B A A B A D A B B A D A D AA D AB B A D A D A考试答案不得超过此线第二趟:A DB A D A B B A A B A D A B B A D A D AA D AB B A D A D A第三趟:A DB A D A B B A A B A D A B B A D A D AA D AB B A D A D A第四趟:A DB A D A B B A A B A D A B B A D A D AA D AB B A D A D A第五趟:A DB A D A B B A A B A D A B B A D A D AA D AB B A D A D A五、算法填空及设计题(共2小题,共10 分)1、(5分)void Print(BNode *TL ){if (TL!=NULL){if(TL->Lchild==NULL&& TL->Rchild==NULL)cout<<TL->data;Print(TL->Lchild);Print(TL->Rchild);}}2、(5分)void InsertList ( SqList *L, ElemType x){ i=L.length-1;while( i>=0 && L.elem[i]>x ){ L.elem[i+1]=L.elem[i]; i--; }L.elem[i+1]=x; L.length++;}。

计算机系统结构试题及答案

计算机系统结构试题及答案

2009-2010学年度第一学期2007级《计算机系统结构》期末考试试卷(A)(闭卷)姓名:学号:专业:(注:①考试时间为120分钟;②所有解答必须写在答题纸上.)一、单项选择题(每小题3分,共30分)1.在系列机中发展一种新型号机器,你认为下列()设想是不行的?【A】新增加字符数据类型和若干条字符处理指令【B】将中断分级由原来的4级增加到5级【C】在CPU和主存之间增设Cache存贮器【D】将浮点数的下溢处理法由原来的恒置“1"法,改为查表舍入法2.对计算机系统结构来说,不透明的是( )。

【A】存储器采用交叉存取还是并行存取【B】CPU内部的数据通路的宽度是8位还是16位【C】采用浮点数据表示还是标志符数据表示【D】指令采用硬联逻辑实现还是微程序实现3.一个平衡的计算机系统,应该是( )。

【A】1MIPS的CPU速度【B】1MB的主存容量【C】1Mb/s的I/O吞吐率【D】A、B和C4、()设计是现代计算机系统设计所采用的方法.【A】由上往下【B】由下往上【C】由中间开始【D】上下同时开始5.当今微型机中实现软件移植最好的方法是().【A】系列机【B】兼容机【C】仿真技术【D】统一高级语言6、不能够对向量数据结构提供直接支持的是()数据表示.【A】向量【B】堆栈【C】描述符【D】A和C7、采用整数边界存储技术,其主要目的是()。

【A】节约主存空间【B】提高数据的访问速度【C】一个主存周期可取多条指令【D】一个主存周期至少可取到一条指令8、在指令的操作码编码方式中,优化实用的编码是( )。

【A】Huffman编码【B】等长编码【C】Huffman扩展编码【D】BCD码9、流水计算机中将指令Cache和数据Cache分开,主要是为了( ).【A】提高存储系统的速度【B】增加主存容量【C】解决功能部件冲突【D】解决访存冲突10、当N=16时,能描述4组4元交换的函数是( )。

【A】C1+C2 【B】C0+C1 【C】C0+C2 【D】C2+C3二、(10分)在采用通用寄存器指令集结构的计算机上得到了如下所示的数据:假若编译器优化后能去掉50%的ALU指令,但不能去掉其它三类指令。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
很少有人能镇定地表达与他们的社会环境之偏见相左的意见。大多数人甚至无法形成这种意见。
2007级《数据结构》期末考试题答案
一、 单项选择题(每小题2分
共30分)
1.D 2.C 3.B 4.A 5.D 6.C 7.B 8.A 9. D 10.D 11.B 12.A 13.D 14.C 15.B
线性表中数据元素之间的关系是一对一的关系
即除了第一个和最后一个数据元素之外
其它数据元素都是首尾相接的
3.哈夫曼树:哈夫曼树又称最优二叉树
是一种带权路径长度最短的二叉树
4.最小生成树:最小生成树
四、简答题(每题4分
共16分

1.正确性、稳健性、可读性、时间复杂度、空间复杂度
2.S->right=P->right;
(V0
V1)6
( V2
V6)9
(V3
V4)10
(V0
V5)12
}
}
2.
.后序ABCDEFGH
3.构造的哈夫曼树
树的带权路径长度WPL=131
4.(1)
(2)(V0
V1)6
(V1
V6)4
( V2
V6)9
(V2
V3)5
(V3
V4)10
(V0
)12
(3) (V1
V6)4
(V2
V3)5
4.返回N个数的阶乘之和;O(n)
五、
1.void Preorder(BinTree T)
{
if(T) {
Printf("%c"
T→data);
Preorder(T→lchild);
Preorder(T→rchild);
P->left->right=S;
S->right=P;
P-left=S.
3.树的性质:1)树中的结点数等于所有结点度数之和;
2)度为K的树中第i层上至多有Ki-1个结点(i>=1);
3)深度为h的K叉树上至多有(kh-1)/(k-1) 个结点;
4)具有n个结点的k叉树的最小深度为
二、填空题(每空1分
共14分)
1.相同属性、前驱、后继
2.∟㏒22n」+1 、 2n-1
3.数组
4.栈顶 栈底
5.3 2
6.邻接矩阵、邻接表、边集数组
7.0
三、名词解释(每题4分
共16分

1.数据结构:数据+结构
指的是数据之间的相互关系
即数据的组织形式
2. 线性表是最基本、最简单、也是最常用的一种数据结构
相关文档
最新文档