A、置换-选择排序用于生成外排序的初始归并段
B、置换-选择排序是完成将一个磁盘文件排列成有序文件有效的外排序算法
C、置换-选择排序生成的初始归并段的长度平均是内存工作区的2倍
D、置换-选择排序是一些不等长的初始归并段
第2题
(1)建立初始堆.
①从输入文件中输入p个记录,建立大小为p的堆。
②为第一个初始归并段选择一个适当的磁盘文件作为输出文件。
(2)置换-选择。
内存工作区存在两个堆:当前堆和新堆,新堆紧接在当前堆后存放,总大小为p。
①输出当前堆的堆顶记录到选定的输出文件。
②从输入文件中输入下一个记录。若该记录排序码的值不小于刚输出记录排序码的值,则由它取代堆顶记录,并调整当前堆。若该记录排序码的值小于刚输出记录的排序码的值,则由当前堆的堆底记录取代堆顶记录,当前堆的大小减1。新输入的记录存放在当前堆的原堆底记录的位置上,成为新堆的一个记录。
③如果新堆的记录个数大于「p/2,应着手调整新堆;如果新堆中已有p个记录,表示当前堆已输出完毕,当前的初始归并段结束、应开始创建下一个初始归并段,因此必须另为新堆选择一个磁盘文件作为输出文件。
④重复步骤②~③,直到输入文件输入完毕。
(3)输出剩余记录。
①输出当前堆中的剩余记录,并对输出边调整。
②将内存工作区中的新堆作为最后一个初始归并段输出。
设p=5,排序码序列为(54,15,62,10,77,24,29,20,59,43,69,31,47,38,12,18,51,27),执行置换选择排序的结果如图10-19(a)~图10-19(g)所示.
生成的3个初始归并段为(10,15,24,29,54,59,62,69,77),(20、31,38,43,47,51),(12,18,27)。编写一个算法,实现上述利用堆的置换-选择排序.
第4题
不含用于I/O缓冲区、程序变量等的存储空间)。使用置换-选择排序生成初始归并段和多路平衡归并进行外排序。要求平衡归并趟数只允许2趟。那么,能够得到的有序文件最长为多少?详细说明计算过程。
第7题
A、20
B、258
C、396
D、500
第8题
第9题
经全部有序,则起泡排序过程中需进行(②)次元素值的比较,(③)次元素值的交换。如果待排序元素序列的初始排列完全逆序,则起泡排序过程中需进行(④)次元素值的比较,(⑤)次元素的交换。(1)供选择的答案:A、插入排序;B、选择排序;C、交换排序;D、分配排序;E、归并排序.
第10题
①直接插入排序;
②折半插入排序;
③希尔排序(增量选取5,3,1);
④冒泡排序;
⑤快速排序;
⑥简单选择排序;
⑦二路归并排序。
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!