摘要: 外部排序针对排序文件的大小大于可用内存的情况。如对4GB文件进行排序,可用内存1G,显然没法直接装入内存进行排序。所以我们将这4GB的文件分割为4个1GB的文件进行排序。外部排序的一般步骤为:1. 对分割后的小文件进行内部排序,将排好序的数据写入到4个不同文件中。2. 使用4路归并排序的方法对4个小文件进行排序。(这里仅仅使用长度为4的最小优先级队列)3. 每次读入4个文件中的一个数放入最小优先级队列中,则这个最小优先级队列中的起始元素就为4GB文件中最小的一个。4. 每次从优先级队列中取出起始元素,写入到输出文件中,然后从一个关联的文件中读取下一个元素插入到最小优先级队列中。5. 重复第.. 阅读全文
posted @ 2013-08-13 23:27 Let it be! 阅读(403) 评论(0) 推荐(0) 编辑