外部排序:1:生成若干初始归并段
2:多路归并
当文件很大,内存放不下,对文件进行排序就要用外部排序。
假设文件Fin中数据是12个数,而内存只能放4个,那么过程如下:
1:先取4个把内存填满,新建文件F1
2:从内存中去最小的一个数放到F1中
3:若Fin中还有数,就取出放到内存(保持内存总是满的)
4:从内存取最小的并且大于之前取出的,继续放到F1
重复2,3,4,直到内存中再也取不出这样的数
5:建立新的文件F2,重复2,3,4往F2中放
这样就会建立一系列有序的文件,(选择--置换排序)
再把这些文件通过内存进行多路归并排序放到Fou文件中,即为排序好的文件。
外部排序
最新推荐文章于 2022-08-01 16:38:57 发布