算法

有100亿个整数的文件,我们只有1G内存,如何找到这个文件中出现次数最多的整数
全部评论
逐条读取文件hashmap,key为整数,values为次数,先取1ghashmap数据按次数构建小顶堆,pop出value最小的,删除这个key-value,从剩余key中载入一个key-values,放在堆顶并调整堆,堆顶又是最小了。直到没有可以从载入的数据,只剩下一个小顶堆,把小顶堆的数据构造大顶堆,堆顶最大。输出堆顶的key。
5 回复 分享
发布于 2017-10-13 22:55
美团的题吗?
点赞 回复 分享
发布于 2017-10-14 09:38
hash分流
点赞 回复 分享
发布于 2017-10-14 01:40
百度面试题?
点赞 回复 分享
发布于 2017-10-14 01:27
hash分为多个文件,然后统计每个文件中出线次数最多的那个,然后合并结果
点赞 回复 分享
发布于 2017-10-14 01:16
map_reduce
点赞 回复 分享
发布于 2017-10-13 21:55
hash分治吧
点赞 回复 分享
发布于 2017-10-13 21:43

相关推荐

11-13 20:16
已编辑
厦门理工学院 软件测试
专业嗎喽:硕佬,把学校背景放后面几段,学校背景双非还学院,让人看了就不想往下看。 把实习经历和个人奖项放前面,用数字化简述自己实习的成果和掌握的技能,比如负责项目一次通过率90%,曾4次发现项目潜在问题风险为公司减少损失等等
点赞 评论 收藏
分享
评论
点赞
10
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务