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

2018年武汉科技大学汽车与交通工程学院856数据结构(C语言版)考研强化五套模拟题

  摘要

一、单项选择题

1. 排序算法的稳定性是指( )。

A. 经过排序之后,能使值相同的数据保持原顺序中的相对位置不变

B. 经过排序之后,能使值相同的数据保持原顺序中的绝对位置不变

C. 算法的排序性能与被排序元素的数量关系不大

D. 算法的排序性能与被排序元素的数量关系密切

【答案】A

【解析】假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=tj,且ri 在ij 之前,而在排序后的序列中,ri 仍在rj 之前,则称这种排序算法是稳定的;否则称为不稳定的。

2. 某同步总线的时钟频率为100MHz , 宽度为32位, 地址/数据线复用, 每传输一个地址或数据占用一个时钟周期。若该总线支持突发(猝发) 传输方式, 则一次“主存写”总线事务传输128位数据所需要的时间至少是( )。

A.20ns

B.40ns

C.50ns

D.80ns

【答案】C 。

【解析】总线的时钟频率为100MHz , 则时钟周期为10ns 。数据是128位, 总线宽度是32位, 所以需要4个时钟周期, 而传输地址还需要一个周期, 所以传输一个128位的数据至少需要5个时钟周期, 所以至少需要。

3. 由3个“1”和5个“0”组成的8位二进制补码, 能表示的最小整数是( )。

A.-126

B.-125

C.-32

D.-3

【答案】B

【解析】能表示的最小整数一定是负数, 符号位占用1个“1”; 负数的补码和原码的转化是:原码符号位不变, 数值部分按位取反, 末位加“1”。

因此最小的整数的补码是“10000011”, 原码为“111111101”, 即

4. 用数组r 存储静态链表,结点的next 域指向后继,工作指针j 指向链中结点,使j 沿链移动的操作为( )。

A.j =r[j].next

B.j =j +l

C.j =j ﹣>next

D.j =r[j]﹣>next

【答案】A

【解析】因为是用数组存储,这里所说的工作指针j 相当于数组的下标,结点是存储一个值域和next 域,next 域就是存放下一个结点的下表,所以只要将next 域中的值赋给j 就可以实现j 沿链移动。

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. 设有两个串S1和S2,求S2在S1中首次出现的位置的运算称作( )。

A. 求子串

B. 判断是否相等

C. 模型匹配

D. 连接

【答案】C

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

7. 若一棵二叉树的前序遍历序列为a , e , b , d , c , 后序遍历序列为b , c , d , e , a , 则根结点的孩子结点( )。

A. 只有e

B. 有e 、b

C. 有e 、c

D. 无法确定

【答案】A 。

【解析】由题目可知, 若一棵二叉树的前序遍历序列为a , e , b , d , c , 后序遍历序列为b , c , d , e , a , 其中a 为这棵二叉树的根结点, 接下来, 在前序遍历的第二个结点为e , 而后序遍历的倒数第二个结点为e , 说明a 的孩子结点只有e 。

8. 系统为某进程分配了4个页框, 该进程已访问的页号序列为2, 0, 2, 9, 3, 4, 2, 8, 2, 3, 8, 4, 5, 若进程要访问的下一页的页号为7, 依据LRU 算法, 应淘汰页的页号是( )。

A.2

B.3

C.4

D.8

【答案】B

【解析】LRU 置换算法是选择最近最久未使用的页面予以淘汰。进程有4个页框, 题中访问过程中页框的变化如下:

访问页号为7的页时, 内存中存在的页的页号是:3、8、4和5, 根据LRU 定义应淘汰的是3。

9. 某计算机的Cache 共有16块,采用2路组相联映射方式(即每组2块). 每个主存块大小为32字节,按字节编址. 主存129号单元所在主存块应装入到的Cache 组号是( ).

A.0

B.2

C.4

D.6

【答案】C

【解析】首先根据主存地址计算所在的主存块号,然后根据组相联映射的映射关系K =ImodQ(K代表Cache 的组号,I 代表主存的块号,Q 代表Cache 的组数) 来计算Cache 的组号. 由于每个主存块大小为32字节,按字节编址,那么主存129号单元所在的主存块号是4,Cache 共有16块,采用2路组相联映射方式(即每组2块) ,故Cache 有8组,按照上面的公式可以计算得到Cache 的组号=4mod8=4.

10.若用一个大小为6的数组来实现循环队列,且当前rear 和front 的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear ,front 的值分别为多少?( )

A.1和5

B.2和4

C.4和2