你可能喜欢
问答题
如果某个文件经内排序得到80个初始归并段,试问:
(1)若使用多路归并执行3趟完成排序,那么应取的归并路数至少应为多少?
(2)如果操作系统要求一个程序同时可用的输入/输出文件的总数不超过15个,则按多路归并至少需要几趟可以完成排序?如果限定这个趟数,可取的最低路数是多少?
问答题
假设文件有4500个记录,在磁盘上每个页块可放75个记录。计算机中用于排序的内存区可容纳450个记录。试问:
(1)可建立多少个初始归并段?每个初始归并段有多少记录?存放于多少个页块中?
(2)应采用几路归并?请写出归并过程及每趟需要读写磁盘的页块数。
问答题
问答题
问答题
问答题
在不要求完全排序时,堆排序是一种高效的算法。这种算法的过程是:
(Heapification)把待排序序列看作一棵完全二叉树,通过反复筛选将其调整为堆;
(Re-heapification)依次取出堆顶,然后将剩余的记录重新调整为堆。
现考虑序列A = { 23,41,7,5,56 }:
(1)给出对应于序列A的最小堆HA(以线性数组表示);
(2)给出第一次取出堆顶后,重新调整HA后的结果(以线性数组表示);
(3)给出第二次取出堆顶后,重新调整HA后的结果(以线性数组表示)。
问答题
判断以下序列是否是最小堆?如果不是,将它调整为最小堆。
(1){ 100, 86, 48, 73, 35, 39, 42, 57, 66, 21 }
(2){ 12, 70, 33, 65, 24, 56, 48, 92, 86, 33 }