当前位置:问答库>考研试题

2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题

  摘要

目录

2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题(一) . 2 2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题(二)15 2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题(三)28 2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题(四)40 2017年江西农业大学计算机与信息工程学院908数据结构[专业硕士]考研强化模拟题(五)55

一、填空题

1. 数组的存储结构采用_____存储方式。

【答案】顺序存储结构

【解析】数组本身的存储结构是线性的,也就是说它是连续存储的。

2. 空格串是指_____,其长度等于_____。

【答案】由空格字符(

3. 设广义表

值32)所组成的字符串;空格个数

是_____tail(L )是_____;L 的长度是_____;深度是_____。

;;2;2 【答案】( )(( ))

【解析】广义表的表头是表的第一个元素,表尾是除了第一个元素外其余的所有的元素构成的表;表的长度指表中元素的个数;表的深度指展开后括号的层数。

4. 在单链表L 中,指针P 所指结点有后继结点的条件是_____

【答案】

【解析】指针所指节点的指针域所指向的元素非空,说明该指针所指节点有后继结点。

5. 设用希尔排序对数组{98,36,-9,0,47,23,1,8,10,7}进行排序,给出的步长(也称 增量序列)依次是4,2,1则排序需_____趟,写出第一趟结束后,数组中数据的排列次序_____。

【答案】3; (10,7,-9,0,47,23,1,8,98,36)

6. 已知如下程序段:

语句1执行的时间复杂度为_____;语句2执行的时间复杂度为_____;语句3执行的时间复杂度为_____;语句4执行的时间复杂度为_____。

【答案】(1)n +1 (2)n

(3)n (n +3)/2 (4)n (n +l )/2

【解析】语s 句1执行到不符合条件情况下,执行了n +1次。当语句1不符合条件了是不会执行语句2的,所以语句2被执行了n 次。语句3每次都要执行到不符合条件,故为2+3+4...... +(n +l )加起来就是n (n +3)/2。语句3不符合条件了是不会执行语句4的。所以语句4被执行了1+2+3...... +n 即n (n +l )/2。

7.

【答案】5

8. 若用n 表示图中顶点数目,则有_____条边的无向图成为完全图。

【答案】n (n-l )/2

【解析】无向完全图中任意一个顶点都和其他n-1个顶点都有一条边,即为n (n-l )。又因为每条边重复出现两次,所有无向完全图的边数为n (n-l )/2。

9. 已知二维数组中每个元素占4个单元,在按行优先方式将其存储到起始地址为1000的连续存储区域时,

【答案】1196

【解析】设元素的行标为i ,列标为j 。则它的存储位置为:

10.应用prim 算法求解连通网络的最小生成树问题。 边。

〔始顶点号,终顶点号,权值)

的地址是:_____。

=_____

(1)针对如图所示的连通网络,试按如下格式给出在构造最小生成树过程中顺序选出的各条

(2)下面是Prim 算法的实现,中间有5个地方缺失,请阅读程序后将它们补上。

的值在〈limits •h>中

//图的顶点数,应由用户定义

//用二维数组作为邻接矩阵表示

//生成树的边结点

//边的起点与终点

//边上的权值

//最小生成树定义

//从顶点rt 出发构造图G 的最小生成树T ,rt 成为树的根结点

//初始化最小生成树

T

//依次求MST 的候选边

//遍历当前候选边集合

//选具有最小权值的候选边

//图不连通,出错处理

//修改候选边集合

【答案】(1)(0,3,1); (3,5, 4); (5,2,2); (3,1, 5); (1,4,3) (2)①T[k]; tovex=i②min=Maxint③mispos=i④exit (O )⑤T[i]; fromvex=v

【解析】Prim 算法的执行类似于寻找图的最短路径的Dijkstra 算法。假设N={V,E}是连通图

,是N

上最小生成树边的集合。算法从属于

为止。

E T 开始,重复执行下述操作:在所有u 属于

加入集合

同时将

并入

v

直到

的边(u ,v )属于E

中找一条代价最小的边

二、选择题

11.在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是( )。

A. 直接插入排序 B. 起泡排序 C. 简单选择排序 D. 快速排序 【答案】A

【解析】当待排序列基本有序时,对冒泡排序来说,若最大关键字位于序列首部,则每趟排序仅能使其“下沉”一个位置,要使其下沉到底部仍需

趟排序,也即时间复杂度仍为

而对

简单选择排序来说,其比较次数与待排序列的初始状态无关;归并排序要求待排序列已经部分有序,而部分有序的含义是待排序列由若干有序的子序列组成,即每个子序列必须有序,并且其时;直接插入排序在待排序列基本有序时,每趟的比较次数大为降低,也即间复杂度为0(nlog2n )n-1趟,

比较的时间复杂度由

降至