2017年辽宁工程技术大学软件学院827数据结构复试实战预测五套卷
● 摘要
一、应用题
1. 在多关键字排序时,LSD 和MSD 两种方法的特点是什么?
【答案】(1)最高位优先(MSD )法 先对最高位关键字进行排序,将序列分成若干子序列,
每个子序列中的记录都具有相同的值,然后,分别就每个子序列对关键字
列。
(2)最低位优先
先对最低位关键字
位关键字
序列参加排序,
但对法 进行排序,然后对高一级关键字进行排序,依次重复,直至对最高进行排序,按值不同再分成若干更小的子序列,依次重复,直至最后对最低位关键字排序完成,将所有子序列依次连接在一起,成为一个有序子序排序后便成为一个有序序列。进行排序时,不必分成子序列,对每个关键字都是整个排序时,只能用稳定的排序方法。另一方面,按LSD 进行排序时,可以不通过关键字比较实现排序,而是通过若干次“分配”和“收集”来实现排序。
2. 输入一个正整数序列(53,17,12,66,58,70,87,25,56,60),试完成下列各题。
(1)按次序构造一棵二叉排序树BS 。
(2)依此二叉排序树,如何得到一个从大到小的有序序列?
(3)画出在此二叉排序树中删除“66”后的树结构。
【答案】(1)构造的二叉排序树如图1所示:
图1 二叉排序树
(2)若二叉树非空,要得到一个从大到小的有序序列可以先中序遍历右子树;再访问根结点;最后中序遍历左子树。
(3)如图2所示:
图2
3. 外排序中为何采用k 一路
么?
【答案】外排序用路归并是因为k 越小,归并趟数越多,读写外存次数越多,时间效率越低,故一般应大于最少的2-路归并。若将k-路归并的败者树思想单纯用于内排序,因其由胜者树改进而来,且辅助空间大,完全可由堆排序取代,故将其用于内排序效率并不高。
4. 将关键字序列(7, 8, 30,11,18, 9,14)散列存储到散列表中,散列表的存储空间是一个下标从0开始的一维数组。散列函数是:
列法,要求装填(载)因子为0.7。
(1)请画出所构造的散列表。
(2)分别计算等概率情况下查找成功和查找不成功的平均查找长度。
【答案】(1)要求装填因子为0.7, 数组的长度应该为7/0.7=10, 数组下标为0〜9。各关键字的散列函数值如下表:
采用线性探测法再散列法处理冲突,所构造的散列表为:
(2)查找成功时,在等概率情况下,查找表中每个元素的概率是相等的,因此是根据表中元素个数来计算平均查找长度,各关键字的比较次数如下表所示:
故查找成功的平均查找长度为(1+1+1+1+3+3+2)/7=12/7。
在不成功的情况下,由于任意关键字key , H (key )的值只能是0〜6之间,H (key )为0需要比较3次,H (key )为1需要比较2次,H (key )为2需要比较1次,H (key )为3需要比较2次,H (key )为4需要比较1次,H (key )为5需要比较5次,H (key )为6需要比较4次,共7种情况,如下表所示:
所以,在等概率下,查找失败的平均查找长度为:(3+2+1+2+1+5+4)/7=18/7。
5. 在各种排序方法中,哪些是稳定的? 哪些是不稳定的? 并为每一种不稳定的排序方法举出一个不稳定的实例。
【答案】各种排序算法稳定性的归纳如图所示:
合并而不用2—路合并? 这种技术用于内排序有意义吗? 为什处理冲突采用线性探测再散
图
6. 下列广义表,可以唯一对应一棵二叉树的有?并归纳出唯一对应的条件。
【答案】唯一对应一棵二叉树的有(2)、(3)和(5)。唯一对应的条件:空表、只有一个元素的表、每个子表个数是零或是2的表。
7. 某请求分页系统的局部页面置换策略如下:系统从0时刻开始扫描,每隔5个时间单位扫描
,本轮没有被访问过的页框将被系统回收,并放入到空闲页框链一轮驻留集(扫描时间忽略不计)
尾,其中内容在下一次被分配之前不被清空。当发生缺页时,如果该页曾被使用过且还在空闲页框链表中,则重新放回进程的驻留集中;否则,从空闲页框链表头部取出一个页框。假设不考虑其他进程的影响和系统开销,初始时进程驻留集为空。目前系统空闲页框链表中页框号依次为32、15、21、41。进程
(1)访问
(2)访问
(3)访问
【答案】
(1)页框号为21。因为起始驻留集为空,而0页对应的页框为空闲链表中的第三个空闲页框,其对应的页框号为21。
(2)页框号为32。理由:因11>10故发生第三轮扫描,页号为1、3的页框32、15在第二轮已处于空闲页框链表中,此刻1页又被重新访问,因此应被重新放回到驻留集中。其页框号为32。
(3)页框号为41。理由:因为第2页从来没有被访问过,它不在驻留集中,因此从空闲页框链表中取出链表头的页框41,页框号为41。
P 依次访问的<虚拟页号,访问时刻>是
:请回答下列问题。 时,对应的页框号是什么? 时,对应的页框号是什么? 说明理由。 . 时,对应的页框号是什么? 说明理由。 (4)该策略是否适合于时间局部性好的程序? 说明理由。