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

2017年齐鲁工业大学理学院872数据结构考研强化模拟题

  摘要

一、选择题

1. 向一个栈顶指针为h 的带头结点的链栈中插入指针S 所指的结点时,应执行( )。

【答案】D

【解析】本题是向一个链栈中插入结点,可从头结点后插入。先将s 结点指向第一个头结点之后的结点之前,再将头结点指向s 结点。

2. 设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。

A. 线性表的顺序存储结构 B. 队列

C. 线性表的链式存储结构 D. 栈 【答案】D

【解析】用栈更合适,如果是左括号,进找;如果是右括号,看栈顶是不是左括号,如果是, 则左括号出栈;否则不配对(可以直接结束算法)。处理完所有符号号,如果栈为空则配对成功。

3. 某时刻进程的资源使用情况如下表所示

此时的安全序列是( )。 A.P1, P2, P3, P4 B.P1, P3, P2, P4 C.P1, P4, P3, P2 D 不存在 【答案】D

【解析】典型的死锁避免算法,银行家算法的应用。银行家算法是操作系统中的一个重点知识单元,考生对此应该非常熟悉,本题并无难点。分析一下下表,可以看到,经过P1, P4的运行以后,可用资源是2, 2,1,而 P2, P3所需资源分别是1,3, 2和1,3,1。所以剩余资源已经不够P2或P3的分配,亦即找不到能够安全运行的序 列,因此此时是处于不安全状态,所以不存在

这样的安全序列。

4. 程序段

其中n 为正整数,则最后一行的语句最坏情况下的时间复杂度是( )。

【答案】D

【解析】这个是冒泡排序,最坏的情况下需要进行次交换,即时间复杂度是

5. 在含有n 个关键字的小根堆(堆顶元素最小)中,关键字最大的记录有可能存储在( )位置上。

【答案】D

【解析】小根堆中,关键字最大的记录只能在叶结点上,故不可能在小于等于上。

6. 单处理机系统中,可并行的是( )。

I. 进程与进程 II. 处理机与设备 III. 处理机与通道 IV. 设备与设备 A.I 、II 和III B.I 、II 和IV C.I 、III 和IV D.II 、III 和IV 【答案】D

【解析】注意区分并发和并行。在单处理机系统中,进程只能并发。微观上同一时刻占用处理机的进程只有一个,因此,进程之间不是并行的。通道是独立于CPU 控制的输入/输出的设备,处理机与通道两者是可以并行。显然,设备和设备之间也是可以并行的。

的结点

7. 设文件F1的当前引用计数值为1,先建立F1的符号链接(软链接)文件F2, 再建立F1的硬链接文件F3, 然后删除F1。此时,F2和F3的引用计数值分别是( )。

A.0、1 B.1、1 C.1、2 D.2、1 【答案】B

【解析】为了使文件实现共享,通常在使用该形式文件系统的文件索引节点中设置一个链接计数字段,用来表示链接到本文件的用户目录项的数目(引用计数值),这是共享的一种方法。当新文件建立时,一般默认引用计数值为1。硬链接可以看作是已存在文件的另一个名字,新文件和被链接文件指向同一个节点,引用计数值加1。当删除被链接文件时,只是把引用计数值减1,直到引用计数值为0时,才能真正删除文件。软链接又叫符号链接,在新文件中只包含了被链接文件的路径名,新文件和被链接文件指向不同的节点。建立软链接文件时,文件的引用计数值不会增加。在这种方式下,当被链接文件删除时,新文件仍然是存在的,只不过是不能通过新文件的路径访问被链接文件而已。因此,在本题中,当建立F2时,F1和F2的引用计数值都为1。当再建立F3时,F1和F3的引用计数值就都变成了2。当后来删除F1时,F3的引用计数值为2-1=1。F2的引用计数值仍然保持不变,所以F2和F3的引用计数值分别是:1, 1。

8. 用希尔排序方法对一个数据序列进行排序时,若第1趟排序结果为趟排序采用的增量(间隔)可能是( )

A.2 B.3 C.4 D.5

【答案】B

【解析】对于A , 增量为2, 那么9, 4, 7, 20, 15是一组,而它们是无序的,所以A 错误 对于C , 增量为4, 那么9, 7,15是一组,而它们是无序的,所以C 错误

对于D , 增量为5, 那么9, 8是一组,降序,1,20是一组,而它们是升序,所以D 也错误。对于B ,分为3组:都是升序有序,所以B 正确

9. 若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。

A. 顺序表 B. 双链表

C. 带头结点的双循环链表 D. 单循环链表 【答案】A

则该