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

2018年太原理工大学计算机科学与技术学院、软件学院834数据结构和操作系统之数据结构考研强化五套模拟题

  摘要

一、单项选择题

1. 循环两列放在一维数组中, end1指向队头元素, end2指向队尾元素的后一个位置。假设队列两端均可进行入队和出队操作, 队列中最多能容纳M-1个元素。初始时为空, 下列判断队空和队满的条件中, 正确的是( )

A. 队空:endl==end2; 队满:endl==(end2+l)modM

B. 队空Gendl==end2; 队满:Gend2==(endl+1)mod(M-1)

C. 队空Gend2==(endl+1)modM; 队满:Gendl==(end2+l)modM

D. 队空:

【答案】A

【解析】在循环队列中, 在少用一个元素空间的前提下, 可约定入队前, 测试尾指针在循环意义下加1后是否等于头指针, 若相等, 则队满。而队空的条件还是首尾指针是否相等。

2. 对进行基数排序,一趟排序的结果是:( )

A. 05, 46, 13, 55, 94, 17, 42 B.

C. 42,13, 94,05, 55, 46,17

D. 05,13, 46,55,17,42,94

【答案】C

【解析】基数排序有两种:最低位优先和最高位优先。

①最低位优先的过程

先按最低位的值对记录进行排序,在此基础上,再按次低位进行排序,依此类推。由低位向高位,每趟都是 根据关键字的一位并在前一趟的基础上对所有记录进行排序,直至最高位,则完成了基数排序的整个过程。

②以r 为基数的最低位优先排序的过程 假设线性表由结点序列

成,

其中

分配:开始时,把

收集:把

线性表。

队满: 构成,每个结点的关键字由d 元组。在排序过程中,使用r 个队列组。排序过程就是对i=0, 1,... ,d -1,依次做一次“分配”和“收集”。 各个队列置成空队列,然后依次考察线性:

表中的每一个结点各个队列中的结点依次首尾相接,得到新的结点序列,从而组成新的。如果的关键字k=k,就把放进Q k 队列中。

3. 下列关于AOE 网的叙述中,不正确的是( )。

A. 关键活动不按期完成就会影响整个工程的完成时间

B. 任何一个关键活动提前完成,那么整个工程将会提前完成

C. 所有的关键活动提前完成,那么整个工程将会提前完成

D. 某些关键活动若提前完成,那么整个工程将会提前完成

【答案】B

【解析】关键路径是指从有向图的源点到汇点的最长路径。某些关键活动提前完成,那么整个工程将会提前完成,但不是任何一个关键活动提前完成,就能保证整个工程将会提前完成。

4. 某系统正在执行三个进程P1、P2和P3, 各进程的计算(CPUCPUCPU)时间和时间比例如下表所示。

为提高系统资源利用率, 合理的进程优先级设置应( ) A. B. C. D.

【答案】B

【解析】为了合理地设置进程优先级, 应该将进程的CPU 利用时间和时间做综合考虑, 故答案选B 。

5. 在一棵三元树中度为3的结点数为2个,度为2的结点数为1个,度为1的结点数为2个,则度为0的结点数为( )个。

A.4

B.5

C.6

D.7

【答案】C

【解析】设度为0的结点数为x ,则度为3的树总结点数n =度为0的结点数+度为1的结点数+度为2的结点数+度为3的结点数=x +2+l +2=x +5;从每个结点所指向的结点数的和的角度来计算度为3的树总结点数n =2×3+1×2+2×1+1=11。两种方法所计算出来的n 相等,所以x =6。

6. 设与某资源相关联的信号量初值为3,当前为1,若M 表示该资源的可用个数,N 表示等待该资源的进程数,则M ,N 分别是( ).

A.0、1

B.1、0

C.1、2

D.2、0

【答案】B

【解析】信号量初值是3表示资源数有3个,当前为1表示已经用掉2个,剩余可用的资源数就只有1个了,由于资源有剩余,可见没有其他进程等待使用该资源,故进程数为0.

7. 在体系结构中, 直接为ICMP 提供服务的协议是( )。

A.PPP

B.IP

C.UDP

D.TCP

【答案】B 。

【解析】首先明确ICMP 是网络层的协议, 由于服务必须是下一层向上一层提供服务的, 因此选项C 项中的UDP 和选项D 项中的TCP 属于传输层, 在网络层上面, 所以显然错误, 而PPP 协议是广域网数据链路层协议, 直接为网络层, 也就是IP 层提供服务, ICMP 协议是封装在网络层, 因此PPP 不能直接为ICMP 提供服务, ICMP 报文直接封装在IP 分组中, 故答案是B 。

8. 对下图进行拓扑排序, 可以得到不同的拓扑序列的个数是( )。

A.4

B.3

C.2

D.1

【答案】B

【解析】拓扑排序的步骤为:

(1)在有向图中选一个没有前驱的顶点并且输出它;

(2)从图中删除该顶点和以它为尾的弧。重复上述两步, 直至全部顶点均已输出。由于没有前驱的顶点可能不唯一, 所以拓扑排序的结果也不唯一。题中所给图有三个不同的拓扑排序序列, 分别为abced , abecd , aebcd 。