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

2017年广州大学计算机科学与教育软件学院915数据结构[专业硕士]考研题库

  摘要

一、选择题

1. 已知小根堆为8,15,10,21,34, 16,12,删除关键字8之后需重建堆,在此过程中,关键字之间的比较数是( )。

A.1

B.2

C.3

D.4

【答案】C

【解析】堆排序中,依次输出堆顶的最小值,然后重新调整堆,如此反复执行,便得到一个有序序列。本题中,删除堆顶元素8后将最后一个元素12置于堆顶,然后调整堆:首先与15比较,12小于15, 所以不用交换;然后与10比较,因为10小于12,所以交换10和12的位置;调

整后12再与16比较,12小于16,调整堆过程结束。因此12共与15、10、16进行了三次比较。

2.

用户程序发出磁盘请求后,系统的处理系统的处理流程是:用户程序一系统调用处理程序一设备骆动程序一中断处理程序。其中,计算数据所在磁盘的柱面号、磁头号、扇区号的程序是( )

A. 用户程序

B. 系统调用处理程序

C. 设备驱动程序

D. 中断处理程序

【答案】C

【解析】计算磁盘号、磁头号和扇区号的工作是由设备驱动程序完成的,所以答案选C 。

3. 在任意一棵非空二叉排序树T1中,删除某结点v 之后形成二叉排序树T2, 再将v 插入T2形成二叉排序树T3。下列关于T1与T3的叙述中,正确的是( )

I. 若v 是T1的叶结点,则T1与T3不同

II. 若v 是T1的叶结点,则T1与T3相同

III. 若v 不是T1的叶结点,则T1与T3不同

IV . 若v 不是T1的叶结点,则T1与T3相同

A. 仅 I 、III

B .仅 I 、IV

C. 仅 II 、III

D. 仅 II 、IV

【答案】C

【解析】在一棵二叉排序树中删除一个结点后再将此结点插入到二叉排序树中,如果删除的结点是叶子结点那么在插入结点后,后来的二叉排序树与删除结点之前相同。如果删除的结点不是叶子结点,那么再插入这个结点后,后来的二叉树可能发生变化,不完全相同。

4. 对序

列用希尔排序方法排序,经一趟后序列变

则该次采用的增量是( )。

A.1

B.4

C.3

D.2

【答案】B

【解析】由所给的序列知,本序列要进行递增排序,经过一趟后15的位置没有变化,而给的序列中只有20比15大,20的位置和15的位置相差4。所以该次采用的増量是4。

5. 稀疏矩阵一般的压缩存储方法有两种,即( )。

A. 二维数组和三维数组

B. 三元组和散列

C. 三元组和十字链表

D. 散列和十字链表

【答案】C

【解析】稀疏矩阵一般的压缩方法为三元组表和十字链表。三元组表就是将非零元素及其对应的行和列构成一个三元组(行标,列标,值)。十字链表相比三元组表而言,主要是对每个结点增加了两个链域。如果数组经常运算时,会产生大量数据元素的移动,此时,采用链表存储结构更为恰当。

6. 假定编译器将赋值语句“x=x+3; ”转换为指令” add xaddt, 3”,其中xaddt 是x 对应的存储单元地址,若执行该指令的计算机采用页式虚拟存储管理方式,并配有相应的TLB ,且Cache 使用直写(Write Through)方式,则完成该指令功能需要访问主存的次数至少是( )。

A.0

B.1

C.2

D.3

【答案】C

【解析】采用页式虚拟存储管理方式时,若页表全部放在内存中,则存取一个数据最少要访问两次内存:第一次是访问页表,得到所存取的数据或指令的物理地址;第二次根据该地址存取数据或指令。在配有TLB 的页式虚拟管理方式中,如果给出的地址在TLB 中,则直接根据该地址取数据或指令,仅需要一次访问内存。Cache 使用直写方式时,计算完需要将数据写回到内存中,因此完成整个指令功能至少需要访问主存2次。

7. 广义表【答案】D 则式子 的值为( )。

head 操作就是得到广义表中第一个的原子。【解析】操作就是得到除第一个原子外剩下元

素构成的表。也就是toil 得到的元素需要在外层再加一个( )。

8. 下列有关浮点数加减运算的叙述中,正确的是( )。

对阶操作不会引起阶码上溢或下溢

右规和尾数舍入都可能引起价码上溢

左规时可能引起阶码下溢

尾数溢出时结果不一定溢出

A. 仅

B. 仅

C. 仅 D.

【答案】D

【解析】浮点数的加减运算步骤包括:①对阶,使两个操作数的小数点位置对齐,阶码小的尾数右移,可能产生溢出,但是阶码不会溢出;②尾数求和,将对阶后的尾数按定点数加(减)运算规则运算;③规格化,包括左规和右规,左规时阶码减少,可能出现阶码下溢,而右规时,阶码増加可能出现阶码上溢;④舍入,该过程可能需要右规调整,因此可能出现阶码上溢;⑤溢出判断,浮点数的溢出与否是由阶码的符号决定的,而不是由尾数溢出判断的,因此尾数溢出时结果不一定溢出。因此均正确。

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

,故Cache 有8组,按照上面的公式可以计算得到块,采用2路组相联映射方式(即每组2块)

Cache 的组号=4mod8=4。