1)读取10个文件,按照hash(query)%10的结果将query写到对应的文件中。这样我们就有了10个大小约为1G的文件。任意一个query只会出现在某个文件中。 2)对于1)中获得的10个文件,分别进行如下操作 -利用hash_map(query,query_count)来统计每个query出现的次数。 -利用堆排序算法对query按照出现次数进行排序。 -将排序好的query输出的文件中。 这样我们就获得了10个文件,每个文件中都是按频率排序好的query。 3)对2)中获得的10个文件进行归并排序,并将最终结果输出到文件中。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
1)读取10个文件,按照hash(query)%10的结果将query写到对应的文件中。这样我们就有了10个大小约为1G的文件。任意一个query只会出现在某个文件中。
2)对于1)中获得的10个文件,分别进行如下操作
-利用hash_map(query,query_count)来统计每个query出现的次数。
-利用堆排序算法对query按照出现次数进行排序。
-将排序好的query输出的文件中。
这样我们就获得了10个文件,每个文件中都是按频率排序好的query。
3)对2)中获得的10个文件进行归并排序,并将最终结果输出到文件中。