2017年大连海事大学X01数据结构复试实战预测五套卷
● 摘要
一、应用题
1. 给出模式串
在KMP 算法中的next 和nextval 数组。
【答案】模式串的next 函数定义如下:
根据此定义,
可求解模式串
的next 和nextval 值如下:
2. 证明:在二叉树的三种遍历序列中,所有叶结点间的先后关系都是相同的。要求毎步论断都指出根据。
【答案】前序遍历是“根左右”. 中序遍历是“左根右”. 后序遍历是“左右根”。若将“根”去掉,三祌遍历就剩“左右”。三种遍历中的差别耽足访问根结点的时机不同。二叉树是递归定义的,对左右子树均是按左右顺序来遍历的,因此所有叶结点间的先后关系都是相同的。
3. 某计算机主存按字节编址,逻辑地址和物理地址都是32位,页表项大小为4字节。请回答下列问题。
(1)若使用一级页表的分存储管理方式,逻辑地址结构为:
则页的大小是多少字节?页表最大占用多少字节?
(2)若使用二级页表的分存储管理方式,逻辑地址结构为:
设逻辑地址为LA ,请分别给出其对应的页目录号和表索引达式。
(3)采用(1)中的分页存储管理方式,一个代码段起始逻辑地址为00008000H ,其长度为8KB ,被装载到从物理地址00900000H 开始的连续主存空间中。页表从主存0020 0000H 0020 0000H 开始的物理地址处连续存放,如下图所示(地址大小自下向上递增)。请计算出该代码段对应的两个页表项物理地址、这中框号以及计算出该代码段对应的两个页表项物理地址、这中框号以及计算出该代码段对应的两个页表项物理地址、这两个页表项中的框号以及代码页面2的起始物理地址。
【答案】
(1)因为页内偏移量是12位所以页大小为4KB 页表项数为页表索引可表示为:
表项,所以第8个页表项的物理地址=页表起始地
址
如下图所示。
该一级页表最大为
页表项的字节
数
(2)页目录号可表示为:
(3)代码页面1的逻辑地址为0000 8000H, 表明其位于第8个页处,对应页表中的第8个页
4. 有A 、B 两人通过信箱进行辩论,每人都从自己的信箱中取得对方的问题。将答案和向对方B 的信箱最多放N 提出的新问题组成一个邮件放入对方的邮箱中,设A 的信箱最多放M 个邮件,个邮件。初始时 A 的信箱中有x 个邮件邮件数减1. 。
A 、B 两人操作过程:
从A 的信箱中取出一个邮件; 回答问题并提出一个新问题; 将新邮件放入B 的信箱;
从B 的信箱中取出一个邮件; 回答问题并提出一个新问题; 将新邮件放入A 的信箱;
B 中有y 个辩论者每取出一个邮件,
当信箱不为空时,辩论者才能从信箱中取邮件,否则等待。 当信箱不满时,辩论者才能将新邮件放入信箱,否则等待。
请添加必要的信号量和P 、V (或wait signed )操作,以实现上述过程的同步,要求写出完整过程,并说明信号量的含义和初值。
【答案】首先定义两个互斥信号量:mutexA 和mutexB , 初始时为1,分别用来实现对A 的邮箱和B 的邮箱的互斥使用;然后针对A 的邮箱再定义两个信号量emptyA 和fullA ,
初值分别为
和X ,分别表示信箱中仍能存放信的数量和已经存放的信的数量,同理设置emptyB 和fullB , 初值为
和y 。
通信代码:
从A 的信箱中取出一个邮件;
回答问题并提出一个新问题;
将新邮件放入B 的信箱;
从B 的信箱中取出一个邮件;
回答问题并提出一个新问题;
将新邮件放入A 的信箱;
初始代码:
相关内容
相关标签