面试题8答案

来源:互联网 发布:最优化求非线性方程 编辑:程序博客网 时间:2024/05/01 17:04

       1)顺序读取文件,对其中每个词x,计算hash(x)%5000,根据得到的hash值我们可以将词存入到5000个小文件中(记为),如果其中有文件的大小大于1M,则继续按相同的方法进行切分。直到所有的小文件的大小都小于1M。

       2)对于每个小文件,使用hash_map统计其中出现的每个词以及其出现的频率,然后挑选出出现频率最大的前100个词,并将该100个词及其相应的频率存入新的文件中。

       3)这样能得到5000个新的文件,然后将这5000个新的文件根据词对词频进行归并,再排序,挑选出词频最大的前100个词。

原创粉丝点击