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

数据结构期末试题及答案一、单项选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构和链式存储结构的主要区别在于:A. 数据元素的存储关系B. 数据元素的存储空间C. 数据元素的存储顺序D. 数据元素的存储位置答案:A2. 下列关于栈的描述中,错误的是:A. 栈是一种后进先出(LIFO)的数据结构B. 栈只能进行插入和删除操作C. 栈顶元素可以被访问D. 栈可以进行顺序存储和链式存储答案:B3. 在二叉树的遍历算法中,不使用递归算法的遍历方式是:A. 前序遍历B. 中序遍历C. 后序遍历D. 层序遍历答案:D4. 哈希表的冲突解决方法中,不包括以下哪种:A. 开放定址法B. 链地址法C. 线性探测法D. 排序法答案:D5. 在图的遍历算法中,深度优先搜索(DFS)和广度优先搜索(BFS)的主要区别在于:A. 搜索的顺序B. 存储结构C. 遍历的深度D. 遍历的宽度答案:A6. 快速排序算法的时间复杂度最坏情况下为:A. O(n)B. O(nlogn)C. O(n^2)D. O(n^3)答案:C7. 下列关于二叉搜索树的描述中,正确的是:A. 每个节点的左子树只包含小于该节点的键值B. 每个节点的右子树只包含大于该节点的键值C. 以上两个选项都正确D. 以上两个选项都不正确答案:C8. 在非递归的二叉树遍历算法中,通常需要使用的数据结构是:A. 栈B. 队列C. 链表D. 数组答案:A9. 一个有n个顶点的无向图,其边数最多为:A. nB. n(n-1)/2C. n(n+1)/2D. n^2答案:B10. 一个长度为n的数组进行归并排序时,需要的辅助空间大小为:A. O(1)B. O(n)C. O(nlogn)D. O(n^2)答案:B二、填空题(每题2分,共10分)1. 在数据结构中,______是一种特殊的线性表,它的元素个数是固定的。
答案:数组2. 链表中,每个节点包含数据域和______。
《数据结构》期末考试试题及答案

《数据结构》期末考试试题及答案一、单项选择题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. 编写一个函数,实现链表的插入操作。
《数据结构》期末考试试卷试题及答案

《数据结构》期末考试试卷试题及答案一、选择题(每题5分,共20分)1. 下列哪个不是线性结构?A. 栈B. 队列C. 图D. 数组2. 下列哪个不是栈的基本操作?A. 入栈B. 出栈C. 查找D. 判断栈空3. 下列哪个不是队列的基本操作?A. 入队B. 出队C. 查找D. 判断队列空4. 下列哪个不是图的基本概念?A. 顶点B. 边C. 路径D. 环二、填空题(每题5分,共20分)5. 栈是一种______结构的线性表,队列是一种______结构的线性表。
6. 图的顶点集记为V(G),边集记为E(G),则无向图G=(V(G),E(G)),有向图G=(______,______)。
7. 树的根结点的度为______,度为0的结点称为______。
8. 在二叉树中,一个结点的左子结点是指______的结点,右子结点是指______的结点。
三、简答题(每题10分,共30分)9. 简述线性表、栈、队列、图、树、二叉树的基本概念。
10. 简述二叉树的遍历方法。
11. 简述图的存储结构及其特点。
四、算法题(每题15分,共30分)12. 编写一个算法,实现栈的入栈操作。
13. 编写一个算法,实现队列的出队操作。
五、综合题(每题20分,共40分)14. 已知一个无向图G=(V,E),其中V={1,2,3,4,5},E={<1,2>,<1,3>,<2,4>,<3,4>,<4,5>},画出图G,并给出图G的邻接矩阵。
15. 已知一个二叉树,其前序遍历序列为ABDCE,中序遍历序列为DBACE,请画出该二叉树,并给出其后序遍历序列。
答案部分一、选择题答案1. C2. C3. C4. D二、填空题答案5. 后进先出先进先出6. V(G),E(G)7. 0 叶结点8. 左孩子右孩子三、简答题答案9. (1)线性表:一个线性结构,其特点是数据元素之间存在一对一的线性关系。
数据结构期末考试题及答案

数据结构期末考试题及答案一、选择题(每题2分,共20分)1. 在数据结构中,线性表的顺序存储结构通常使用什么数据结构来实现?A. 链表B. 数组C. 栈D. 队列答案:B2. 以下哪个是二叉树的性质?A. 每个节点最多有两个孩子B. 每个节点最多有三个孩子C. 每个节点最多有四个孩子D. 每个节点最多有五个孩子答案:A3. 在图的遍历算法中,深度优先搜索(DFS)和广度优先搜索(BFS)的区别是什么?A. DFS使用队列,BFS使用栈B. DFS使用栈,BFS使用队列C. DFS和BFS都使用栈D. DFS和BFS都使用队列答案:B...20. 以下哪个排序算法的时间复杂度为O(n^2)?A. 冒泡排序B. 选择排序C. 插入排序D. 所有上述排序算法答案:D二、简答题(每题10分,共30分)1. 简述链表和数组的区别。
答案:链表和数组都是用来存储数据的线性数据结构。
数组是连续的内存空间,可以随机访问,但插入和删除操作效率较低;链表由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针,不支持随机访问,但插入和删除操作较为高效。
2. 什么是递归?请给出一个递归算法的例子。
答案:递归是一种算法设计技术,它允许函数调用自身来解决问题。
递归通常包含基本情况和递归情况。
例如,计算阶乘的递归算法:f(n) = n * f(n-1),其中基本情况是f(1) = 1。
...三、算法设计题(每题25分,共50分)1. 给定一个整数数组,请设计一个算法找出数组中的第k大元素。
答案:可以采用快速选择算法,类似于快速排序的划分过程,通过随机选择一个元素作为基准,将数组分为两部分,一部分包含比基准大的元素,另一部分包含比基准小的元素。
然后根据k与基准元素的位置关系,决定是继续在左侧子数组还是右侧子数组中进行查找。
2. 描述如何使用哈希表解决字符串匹配问题。
答案:哈希表可以用于实现字符串匹配的KMP算法。
首先,构建模式字符串的前缀函数,该函数用于记录模式字符串中每个位置的最长相同前缀和后缀的长度。
数据结构c语言期末考试题库及详解答案

数据结构c语言期末考试题库及详解答案数据结构C语言期末考试题库及详解答案一、选择题1. 在数据结构中,线性表的顺序存储结构被称为:A. 链式存储结构B. 栈C. 队列D. 数组答案:D2. 下列关于栈的描述,错误的是:A. 栈是一种特殊的线性表B. 栈的特点是后进先出C. 栈顶元素是最后插入的元素D. 栈的插入和删除操作都发生在栈顶答案:C二、填空题1. 在C语言中,定义一个具有10个元素的整型数组可以使用语句:________。
答案:int arr[10];2. 链表与数组相比,其优点是________。
答案:动态内存分配,不需要预先知道数据规模三、简答题1. 简述二叉树的遍历方法有哪些,并说明它们的特点。
答案:二叉树的遍历方法主要有前序遍历、中序遍历和后序遍历三种。
前序遍历首先访问根节点,然后递归地遍历左子树和右子树;中序遍历首先遍历左子树,然后访问根节点,最后遍历右子树;后序遍历首先遍历左子树和右子树,最后访问根节点。
每种遍历方法都可以用来对二叉树进行不同的操作和分析。
2. 什么是哈希表?它在实际应用中有哪些优点?答案:哈希表是一种通过哈希函数将键映射到表中一个位置来访问记录的数据结构。
它的优点包括:快速的数据访问速度,因为哈希表通常在常数时间内完成查找;动态的内存分配,可以根据需要调整存储空间;以及灵活的键值对存储方式。
四、编程题1. 编写一个C语言函数,实现单链表的逆序输出。
答案:```c#include <stdio.h>#include <stdlib.h>typedef struct Node {int data;struct Node *next;} Node;void reversePrint(Node *head) {if (head == NULL) return;reversePrint(head->next);printf("%d ", head->data);}int main() {Node *head = (Node *)malloc(sizeof(Node));head->data = 1;head->next = NULL;// 假设链表已经构建完毕reversePrint(head);return 0;}```2. 请实现一个C语言函数,用于计算一个字符串中不同字符的数量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》试题(100分)(供2005级信息管理与信息系统本科专业使用)学号: 姓名: 座号: 系别: 年级: 专业:总分合计人: 复核人:说明:本试卷分为两部分,第I 卷(选择题和判断题)必须在“答题卡”上按规定要求填、涂;第II 卷直接在试卷上作答。
不按规定答题、填涂,一律无效。
第I 卷一、试题类型:单项选择题(每小题2分,共40分) (类型说明:在每小题列出的四个选项中只有一个选项是符合题目要求的,请选出正确选项并在“答题卡”的相应位置上涂黑。
多涂、少涂、错误均无分。
)1. 算法分析的两个主要方面是:( )(A) 空间复杂性和时间复杂性 (B) 正确性和简明性 (C) 可读性和文档性 (D) 数据复杂性和程序复杂性2. 计算机算法指的是: ( )(A) 计算方法 (B) 排序方法 (C) 解决问题的有限运算序列 (D) 调度方法 3. 数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称为:( )(A )存储结构 (B )逻辑结构 (C )顺序存储结构 (D )链式存储结构 4.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是 。
( )(A )110 (B )108 (C )100 (D )1205. 链接存储的存储结构所占存储空间: ( )(A )分两部分,一部分存放结点值,另一部分存放表示结点间关系的指针 (B )只有一部分,存放结点值(C ) 只有一部分,存储表示结点间关系的指针(D ) 分两部分,一部分存放结点值,另一部分存放结点所占单元数 6. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址: ( )(A )必须是连续的 (B )部分地址必须是连续的 (C )一定是不连续的 (D )连续或不连续都可以7. 栈中元素的进出原则是:()(A)先进先出(B)后进先出(C)栈空则进(D)栈满则出8. 若已知一个栈的入栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,…,pn,若p1=n,则pi为:()(A) i (B) n=i (C) n-i+1 (D)不确定9. 串是一种特殊的线性表,其特殊性体现在:()(A)可以顺序存储(B)数据元素是一个字符(C)可以链式存储(D)数据元素可以是多个字符10. 设串s1=‘ABCDEFG’,s2=‘PQRST’,函数con(x,y)返回x和y串的连接串,subs(s, i, j)返回串s的从序号i开始的j个字符组成的子串,len(s)返回串s的长度,则con(subs(s1, 2, len(s2)), subs(s1, len(s2), 2))的结果串是:()(A)BCDEF (B)BCDEFG (C)BCPQRST (D)BCDEFEF11. 假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为。
(无第0行第0列元素)()(A)16902 (B)16904 (C)14454 (D)答案A, B, C均不对12.二叉树是非线性数据结构,所以。
()(A)它不能用顺序存储结构存储; (B)它不能用链式存储结构存储;(C)顺序存储结构和链式存储结构都能存储;(D)顺序存储结构和链式存储结构都不能使用13. 具有n(n>0)个结点的完全二叉树的深度为。
()(A) ⎡log2(n)⎤ (B) ⎣ log2(n)⎦ (C) ⎣ log2(n) ⎦+1 (D) ⎡log2(n)+1⎤14.把一棵树转换为二叉树后,这棵二叉树的形态是。
()(A)唯一的(B)有多种(C)有多种,但根结点都没有左孩子(D)有多种,但根结点都没有右孩子15. 已知图的邻接表如下所示,则从顶点0出发按深度优先遍历的结点序列是()16.已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是()17.折半查找有序表(4,6,10,12,20,30,50,70,88,100)。
若查找表中元素58,则它将依次与表中比较大小,查找结果是失败。
()(A)20,70,30,50 (B)30,88,70,50 (C)20,50 (D)30,88,50(A)0 1 3 2 (B) 2 0 3 1(C) 1 3 2 0 (D)0 1 2 3(A)0 3 2 1 (B) 1 2 3 0(C)3 2 1 0 (D) 3 0 1 218.链表是一种采用存储结构存储的线性表。
()(A)顺序(B)链式(C)星式(D)网状19.不含任何结点的空树。
()(A)不是一棵树; (B)不是一棵二叉树;(C)是一棵树也是一棵二叉树; (D)既不是树也不是二叉树20.在一个图中,所有顶点的度数之和等于图的边数的倍。
()A.1/2 B. 1 C. 2 D. 4二、试题类型:判断题(每小题1分,共10分)(类型说明:判断正确答案,选项并在“答题卡”的相应位置填涂,认为正确的涂“A”错误的涂“B ”。
多涂、少涂、错误均无分。
)21. 二叉树中每个结点的两棵子树是有序的。
()22. 顺序存储方式只能用于存储线性结构。
()23. 二叉树中每个结点的关键字值大于其左非空子树(若存在的话)所有结点的关键字值,且小于其右非空子树(若存在的话)所有结点的关键字值。
()24. 栈和队列的存储方式既可是顺序方式,也可是链接方式。
()25. 二叉树中所有结点,如果不存在非空左子树,则不存在非空右子树。
()26. 队列是一种先进后出型结构。
()27. 一个栈的输入序列是12345,则栈的输出序列不可能是12345。
()28. 栈是一种对所有插入、删除操作限于在表的一端进行的线性表,是一种后进先出型结构。
()29. 线性表在物理存储空间中也一定是连续的。
()30. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。
()第II卷三、试题类型:填空题(每空1分,共10分)(类型说明:请将正确答案填于试题预留的横线上。
)31. 栈是一种特殊的线性表,允许插入和删除运算的一端称为。
不允许插入和删除运算的一端称为。
32. 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动个元素。
33. 向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动个元素。
34. 假设有二维数组A6×8,每个元素用相邻的6个字节存储,存储器按字节编址。
已知A的起始存储位置(基地址)为1000,则数组A的体积(存储量)为;末尾元素A57的第一个字节地址为;若按行存储时,元素A14的第一个字节地址为;若按列存储时,元素A47的第一个字节地址为。
35. 设S=“A;/document/Mary.doc”,则strlen(s)= , “/”的字符定位的位置为。
四、试题类型:简答题(每小题5分,共30分)(类型说明:)36. 已知二维数组Am,m采用按行优先顺序存放,每个元素占K个存储单元,并且第一个元素的存储地址为Loc(a11),请写出求Loc(aij)的计算公式。
37. 用三元组表表示下列稀疏矩阵:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-00000300000000050000000000000920000038. 试写出如图所示的二叉树分别按先序、中序、后序遍历时得到的结点序列。
39. 把如图所示的树转化成二叉树。
40. 已知如图所示的有向图,请给出该图的邻接表。
41. 请对下图的无向带权图,求其最小生成树;五、试题类型:分析题(每小题5分,共5分)(类型说明:)42. 已知一组关键字序列:49 38 65 97 13 27按照快速排序方法对此序列进行排序,写出每趟排序的结果。
六、试题类型:编程题(每小题5分,共5分)(类型说明:)43. 设顺序表va中的数据元素递增有序。
试写一算法,将x插入到顺序表的适当位置上,以保持该表的有序性。
顺序表的存储结构如下:typedef struct {ElemType *elem; //指向存放线性表中数据元素的基地址int length; //线性表的当前长度int listsize; //当前分配的存储容量}SqList;Status InsertSqList(SqList &va,int x)//把x插入递增有序表va中{ if(va.length+1>va.listsize) return ERROR;《数据结构》A卷信管本科专业标准答案及评分标准(按试题顺序排列)一、单项选择题(每小题2分,共40分)1、A2、C3、C4、 B5、A6、D7、B8、C9、B 10、D11、A 12、C 13、C 14、A 15、D16、A 17、A 18、B 19、C 20、C二、判断题(每小题1分,共10分)21. A 22. B 23. B 24. A 25. B 26. B 27. B 28. A 29. B 30. B三、填空题(每空1分,共10分)31. 栈顶栈底32. n-i+133. n-i34. 288 B 1282 1072 127635. 20 3四、简答题(每小题5分,共30分)36. Loc(aij)= Loc(a11) +[ (i-1)*m+(j-1) ] * K37.38.先序:A B D F J G K C E H I L M---------2分中序: B F J D G K A C H E L I M----------2分后序:J F K G D B H L M I E C A----------1分39.40.41. 五、试题类型:分析题(每小题5分,共5分)42. 初始序列:49 38 65 97 13 27第一趟排序结果:27 38 13 49 97 65第二趟排序结果:13 27 38 49 65 97六、试题类型:编程题(每小题5分,共5分)43. va.length++;for(i=va.length-1;va.elem[i]>x&&i>=0;i--)va.elem[i+1]=va.elem[i];va.elem[i+1]=x;return OK; }《数据结构》试题(100分)(供2005级信息管理与信息系统本科专业使用)学号:姓名:座号:系别:年级:专业:6 6 41 6 -22 5 9 43 5 6 5 3总分合计人: 复核人:说明:本试卷分为两部分,第I 卷(选择题和判断题)必须在“答题卡”上按规定要求填、涂;第II 卷直接在试卷上作答。
不按规定答题、填涂,一律无效。
第I 卷一、试题类型:单项选择题(每小题2分,共40分)(类型说明:在每小题列出的四个选项中只有一个选项是符合题目要求的,请选出正确选项并在“答题卡”的相应位置上涂黑。