有一个10 G 的文件,你只有有一个 2 G 的内存,找出重复最多的数字

就是先遍历一遍全部数字,用hash先划分成10个文件(比如对10取模),然后统计每个文件中数字的出现次数(如果这个文件大于1G,就把这个文件继续分成小文件),找出出现最多的,最后把所有文件中找出的数的进行比较。

划分出的文件存在硬盘里(比如用FileOutputStream写到a1.txt..a10.txt),这些txt肯定都存在硬盘里,而不是在内存中,所以可以分出来。

原文地址:https://www.cnblogs.com/FengZeng666/p/12430428.html