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

2017年武汉大学数据结构和数据库(同等学力加试)之数据结构考研复试核心题库

  摘要

一、应用题

1. 对下面的关键字集

若查找表的装填因子为0.8,采用线性探

测再哈希方法解决冲突,做:(1)设计哈希函数;(2)画出哈希表;(3)计算查找成功和查找失败的平均查找长度;(4)写出将哈希表中某个数据元素删除的算法。

【答案】(1)由于装填因子为0.8,关键字有8个,所以表长为哈希函数,哈希函数为

(2)哈希表如表所示:

表 哈希表

(3)计算查找失败时的平均查找长度,必须计算不在表中的关键字,

当其哈希地址为

时的查找次数。本例中

(4)算法如下:

2. 设G=(V , E)以邻接表存储,如图所示,试画出图1的深度优先生成树和广度优先生成树。

故查找失败和查找成功时的平均查找长度分别为:

用除留余数法设计

图1

【答案】设从顶点1开始遍历,则深度优先生成树如图2所示,广度优先生成树如图3所示:

图2 图3

3. 特殊矩阵和稀疏矩阵哪一种压缩存储后失去随机存取的功能? 为什么?

【答案】特殊矩阵指值相同的元素或零元素在矩阵中的分布有一定规律,因此可以对非零元,将非零元素存储在向量中,元素的下标i 和j 和该素分配单元(对值相同元素只分配一个单元)

元素在向量中的下标有一定规律,可以用简单公式表示,仍具有随机存取功能。而稀疏矩阵是指非零元素和矩阵容量相比很小

且分布没有规律。用十字链表作存储结构自然失去了随机

最差情况下是

因此也失去

存取的功能。即使用三元组表的顺序存储结构,存取下标为i 和j 的元素时,要扫描三元组表,下标不同的元素,存取时间也不同,最好情况下存取时间为

了随机存取的功能。

4. 某博物馆最多可容纳500人同时参观,有一个出入口,该出入口一次仅允许个通过。参观者的活动描述如下:

参观者进程i :

进门;

参观;

出门;

coend

请添加必要的信号量和P 、

V 的互斥与同步。

操作,以实现上述操作过程中

要求写出完整的过程,说明信号量含义并赋初值。 【答案】 定义两个信号量

博物馆可以容纳的最多人数

用于出入口资源的控制

参观者进程i :

进门;

5. 请求分页管理系统中,假设某进程的页表内容如下表所示:

页面大小为4KB ,一次内存的访问时间是100ns ,一次快表(TLB )的访问时间是10ns ,处,进程的驻留集大小固定为2, 采理一次缺页的平均时间为108ns (已含更新TLB 和页表的时间)

用最近最少使用置换算法(LRU )和局部淘汰策略。假设①TLB 初始为空;②地址转换时先访问TLB , 若TLB 未命中,再访问页表(忽略访问页表之后的TLB 更新时间);③有效位为0表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列

请问:

(1)依次访问上述三个虚地址,各需多少时间? 给出计算过程。

(2)基于上述访问序列,虚地址1565H 的物理地址是多少? 请说明理由。 【答案】⑴

页面大小为4KB ,因此,虚地址的低12位是页内偏移,其余高位是页号。

访问虚地址2362H , 虚页号为2,页内偏移362H 。查找TLB , TLB 初始为空,未命中,耗时10ns ; 访问页表,2号页面所在页框号为254H ,耗时100ns ; 计算得到的物理地址254362H ,访问内存,耗时100ns 。因此,总共用时

访问虚地址1565H ,虚页号为1, 页内偏移565H 。查找TLB ,未命中,耗时10ns ; 访问页表,有效位是0,未命中,耗时100m ; 产生缺页中断,进行缺页中断处理,耗时108m ; 采用LRU 置换