外部排序-第11章-《数据结构题集》习题解析-严蔚敏吴伟民版

习题集解析部分html

第11章 外部排序算法

——《数据结构题集》-严蔚敏.吴伟民版数据结构

       源码使用说明  连接☛☛☛ 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明测试

       课本源码合辑  连接☛☛☛ 《数据结构》课本源码合辑spa

       习题集全解析  连接☛ 《数据结构题集》习题解析合辑操作系统

 

      相关测试数据下载  连接☛ 数据包设计

 

      本习题文档的存放目录:数据结构\▼配套习题解析\▼11 外部排序3d

      文档中源码的存放目录:数据结构\▼配套习题解析\▼11 外部排序\▼习题测试文档-11htm

      源码测试数据存放目录:数据结构\▼配套习题解析\▼11 外部排序\▼习题测试文档-11\Datablog

 

1、基础知识题

11.1❶假设某文件经内部排序获得100个初始归并段,试问:

  (1)若要使多路归并三趟完成排序,则应取归并的路数至少为多少?

  (2)倘若操做系统要求一个程序同时可用的输入、输出文件的总数不超过13,则按多路归并至少需几趟可完成排序?若是限定这个趟数?则可取的最低路数是多少?


11.2❷假设一次I/O的物理块大小为150,每次可对750个记录进行内部排序,那么,对含有150000个记录的磁盘文件进行4-路平衡归并排序时,需进行多少次I/O?


11.3❶“败者树”中的“败者”指的是什么?若利用败者树求k个数中的最大值,在某次比较中获得a>b,那么谁是败者?“败者树”与“堆”有何区别?


11.4❷手工执行算法k-merge,追踪败者树变化过程。假设初始归并段为:

  (10, 15, 16, 20, 31, 39, +∞);

  (9, 18, 20, 25, 36,48, +∞);

  (20, 22, 40, 50, 67, 79, +∞);

  (6, 15, 25, 34, 42, 46, +∞);

  (12, 37, 48, 55, +∞);

  (84, 95, +∞)


11.5❷为何置换-选择排序能获得平均长度为2w的初始归并段?可否依置换-插入或置换-交换等策略创建相似的排序方法?


11.6❷设内存有大小为6个记录的区域可供内部排序之用,文件的关键字序列为(51, 49, 39, 46, 38, 29, 14, 61, 15, 30, 1, 48, 52, 3, 63, 27, 4, 13, 89, 24, 46, 58, 33, 76)。试列出:

  (1)用第10章中的内部排序方法求出的初始归并段;

  (2)用置换-选择排序得出的初始归并段,并写出FI,W和FO的变化过程;

  (3)用上面给出的数据手工执行算法repl-selection。


11.7❶试问输入文件在哪一种状态下经由置换-选择排序获得的初始归并段长度最长?其最长的长度是多少?


11.8❶试问输入文件在哪一种状态下经由置换-选择排序获得的初始归并段长度最短?其最短的长度是多少?


11.9❶倘若一个经由置换-选择排序获得的输出文件再次进行置换-选择排序,试问该文件将产生什么变化?


11.10❷在输入文件为逆序的状况下,由11.13题所描述的天然选择排序获得的初始归并段的平均长度为多少?


11.11❷已知某文件通过置换-选择排序以后,获得长度分别为47, 9, 39, 18, 4, 12, 23和7的八个初始归并段。试为3-路平衡归并设计一个读写外存次数最少的归并方案,并求出读写外存的次数。


11.12❷已知有31个长度不等的初始归并段,其中8段长度为2,8段长度为3,7段长度为5,5段长度为12,3段长度为20(单位均为物理块)。请为此设计一个5-路最佳归并方案,并计算总的(归并所需的)读/写外存的次数。


 

转载注明出处:原文连接

 

2、算法设计题

11.13❹假设在进行置换-选择排序时,可另开辟一个和工做区的容量相同的辅助存储区(称储备库)。当输入的记录关键字小于刚输出的MINIMAX记录时,不将它存入工做区,而暂存在储备库中,接着输入下一记录,依次类推,直至储备库满时再也不进行输入,而只从工做区中选择记录输出直至工做区空为止,至此获得一个初始归并段。以后,再将储备库中记录传送至工做区,从新开始选择排序。这种方法称天然选择排序。通常状况下可求得比置换-选择排序更长的归并段。

  (1)试对11.4节中文件例子进行天然选择排序,求初始归并段。

  (2)编写天然选择排序的算法。

相关文章
相关标签/搜索