100GB URL文件,1GB内存,求出TOP100的URL。
1.将100GB文件过于大,超出了1GB的内存,所以将大文件分成若干小文件。
2.每个小文件进行排序,求出前100的URL。(使用TreeMap)
3.最后合并求出TOP100的URL。
当存在多个hash相等的URL时,会存在多个URL都要存在同一个小文件,造成超过1GB内存的情况。
利用解决hash冲突方法,Hi=(H(key)+di)% m,用再散列的函数来求一个新的hash值。让所有url分布均匀。
输入集:
1.大部分URL都分布均匀。
2.大部分的URL都hash值一样。