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

2018年河北科技大学信息科学与工程学院841数据结构考研基础五套测试题

  摘要

一、填空题

1. 抽象数据类型的定义仅取决于它的一组_____,而与_____无关,即不论其内部结构如何变化,只要它的_____不变,都不影响其外部使用。

【答案】逻辑特性;在计算机内部如何表示和实现;数学特性

2. 对于一个具有n 个结点的二叉树,当它为一棵_____二叉树时具有最小高度, 当它为一棵_____时,具有最大高度。

【答案】完全;只有一个叶结点的二叉树

3. 如某二叉树有20个叶结点,有30个结点仅有一个孩子,则该二叉树的总结点数为_____。

【答案】69

【解析】二叉树叶结点数为20, 则度为2的结点数为19, 所以总的结点数为20+19+30=69。

4. 设有一个10阶对称矩阵A 采用压缩存储方式(以行为主序存储:a 11=l) , 则a 85的地址为_____。

【答案】33

【解析】设存储的元素的行标为i ,列标为j 。若i >=j ,则的地址为l +2+... +i ﹣l +j =i(i﹣l)/2+j 。若i <j 。则的地址为j(j﹣l)/2+i 。将i =8,j =5代入得33。

5. 对单链表中元素按插入方法排序的C 语言描述算法如下,其中L 为链表头结点指针。请填充算法中标出的空白处,完成其功能。

:_____:

{_____)

(_____、

:_____;_____;p =u ;

【答案】(1)L﹣>next =NULL //置空链表,然后将原链表结点逐个插入到有序表中

(2)p!=NULL //当链表尚未到尾,p 为工作指针

(3)q!=NULL //查P 结点在链表中的插入位置,这时q 是工作指针

(4)p﹣>next =r ﹣>next //将P 结点链入链表中

(5)r﹣>next =p //r是q 的前驱,u 是下个待插入结点的指针

6. 已知t) ,LEN(t)+1))

:

【答案】

;;ASSIGN(S,U) ;ASSIGN(V,SUBSTR(S,INDEX(S,,求REPLACE(S,V ,m) =_____。 二、单项选择题

7. 采用指令Cache 与数据Cache 分离的主要目的是( )

A. 减低Cache 的缺失损失

B. 提高Cache 的命中率

C. 减低CPU 平均访问时间

D. 减少指令流水线资源冲突

【答案】D

【解析】指令流水线不会断流, 预取过来的都是指令

8. 下列选项中, 满足短任务优先且不会发生饥饿现象的调度算法是( )。

A. 先来先服务

B. 高响应比优先

C. 时间片轮转

D. 非抢占式短任务优先

【答案】B

【解析】分析该题目可以看到, 本题所提到的问题是涉及短任务调度也就是属于作业调度, 因此首先排除时间片轮转算法; 因为作业调度算法中没有时间片轮转的算法。其次, 因为问题提到短任务, 则先来先服务的算法也可以排除了, 它与短任务无关。剩余高响应比优先算法和非抢占式短任务优先是哪一个?我们可以通过分析得到, 非抢占式短任务优先算法不能解决饥饿问题, 因为当一个系统短任务源源不断到达是, 长任务必然会得不到调度, 产生饥饿。而解决此方法的最好方式就是采用计算响应比的方法, 并以高响应比值优先调度。这样, 无论短任务或长任务, 均可以得到调度, 而且, 较短任务会得到优先的调度。故满足短任务优先且不会发生饥饿现象的调度算法只有高响应比优先算法。

9. 设有一个10阶的对称矩阵A ,采用压缩存储方式,以行序为主存储,a 11为第一元素,其存储地址为1,每个元素占一个地址空间,则a 85的地址为( )。

A.13

B.33

C.18

D.40

【答案】B

【解析】对于对称矩阵,为了节省存储空间,为多个相同的元素只分配一个存储空间。对于对称矩阵,元素下表之间的对应关系为:当i >=j 时,k =i(i﹣l)/2+j ﹣l ;当i <=j 时,k =j(j﹣l)/2+i ﹣l 。其中k 相当于地址空间的标号,i 为行号,j 为列号。因为第一个元素存储地址为1,所以最后计算的k 需要加1。所以a 85的存储位置为8*(8﹣1)/2+5=33。

10.在一个文件被用户进程首次打开的过程中, 操作系统需做的是( )

A. 将文件内容读到内存中

B. 将文件控制块读到内存中

C. 修改文件控制块中的读写权限

D. 将文件的数据缓冲区首指针返回给用户进程

【答案】B

【解析】概念

11.执行完下列语句段后,f 值为( )。

A.2

B.4

C.8

D. 无限递归

【答案】B

【解析】该程序使用了递归调用,由题知,:f(0)=2;f(l)=l*f(0)=2;f(2)=2*f(l)=4;所以结果为4。

12.设有两个串S1和S2,求S2在S1中首次出现的位置的运算称作( )。

A. 求子串

B. 判断是否相等

C. 模型匹配

D. 连接

【答案】C

【解析】常用的串的基本操作有七种,INDEX(s,t) 是其中的定位函数,这种运算就是所说的模式匹配。