你有一个50GB左右的大文件包含数字。您需要读取文件,对内容进行排序并将已排序的内容复制到另一个新文件。 条件 - 计算机上只有1GB RAM。但是磁盘空间不是问题。
答案 0 :(得分:0)
当我们对所有项目都适合内存的项目进行排序时,我们称之为internal sorting。当我们对项目太大而无法存储在内存中的项目进行排序时,我们称之为external sorting。
计算机程序设计第3卷:排序和搜索第248页讨论外部排序的详细算法(一种是合并排序)。
您还提到该文件包含50GB的数字。也许有很多重复的数字。如果有很多重复的话,你可以使用计数排序。