首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
多菜啊才这纠结半天?
2019-07-12 14:37
已编辑
门头沟学院 C++
关注
已关注
取消关注
问一道题,面试遇到的,不会
说的是有一亿条数据(假设里面是数字),让我找出里面最大的五个数,我该怎么找,这些数据存在文件里,一行存一个。都不知道要考啥…我就说了一个一个读出来,再记录最大的五个数.答案肯定不是这个,不过确实不知道该往什么方向想,有带哥解答一下吗?感谢
#题解#
提示
全部评论
推荐
最新
楼层
刘文涛123
快手_国际化服务端架构开发_Java开发工程师
先问一亿条数据是否存在一个文件,如果是的话,就顺序读取,建立一个有5个元素的小根堆,没读取一个元素就和小根堆顶作比较,如果比小根堆顶小就继续读取,如果比小根堆定大,就替换小根堆顶元素,并且重新构建根堆,直到全部读取完。 如果存在几个文件中,则几个文件同时按照上述步骤进行,然后将所有小跟堆的数据整合,在从新进行小根堆操作。
点赞
回复
分享
发布于 2019-07-12 14:42
呆小木
西安交通大学 数据分析师
这种题目一般有内存限制,思想就是分治。有两种方法,一种就是利用哈希把大文件拆分成若干个小文件,每个小文件都在内存限制范围之内,依次读入内存,配合小顶堆,就能找出最小的n个数。另外一种就是使用分布式集群,利用哈希把大文件映射到多台节点上,每台机器分别计算,最后汇总
点赞
回复
分享
发布于 2019-07-12 15:03
ssezhangpeng
百度_AIG_后台开发
局部淘汰法
点赞
回复
分享
发布于 2019-07-12 21:49
后端打杂人员
中国科学技术大学 C++
5只是个虚数,问题关键应该还是经典的TopK问题,5个元素的话用堆说实话不比数组有优势,1000个,10000个就差别明显了。
点赞
回复
分享
发布于 2019-07-12 17:19
Leal.
The University of Sydney 大数据开发工程师
应该可以用 mapreduce或者 spark吧。就是topN的问题,可以用小顶堆
点赞
回复
分享
发布于 2019-07-12 15:09
池里游啊游
北京青年政治学院 Java
大顶堆或者把这些数据分成1000份,每份里面取最大的5个。然后再把取出来的50000个数据里面取最大的五个。这样内存就存的下了。
点赞
回复
分享
发布于 2019-07-12 15:03
NowaCoder
阿里巴巴_阿里云_研发工程师
堆堆堆
点赞
回复
分享
发布于 2019-07-12 14:52
七彩祥云吞天
京东_数据开发
分布式读取 哈哈
点赞
回复
分享
发布于 2019-07-12 14:51
多菜啊才这纠结半天?
楼主
门头沟学院 C++
感谢牛友热心解答😁
点赞
回复
分享
发布于 2019-07-12 14:50
躺平大仙DiamondJ
南昌大学 Java
用mapreduce读?不太懂,等大神回答
点赞
回复
分享
发布于 2019-07-12 14:44
你午睡了么🔯
北京邮电大学 Java
topn 大顶堆?
点赞
回复
分享
发布于 2019-07-12 14:40
纯情艳阳天
浙江大学 Java
用大小为5的小顶堆
点赞
回复
分享
发布于 2019-07-12 14:40
暂无评论,快来抢首评~
相关推荐
06-30 00:12
浙江大学 集成电路IC设计
牛友们,今天和女朋友分手了
今天和女朋友分手了,有很多话想说但是发到其他平台她肯定会看见,思来想去貌似只有牛客她看不到了。鼠鼠是典型的小镇做题家出生,今年研二马上找工作,家庭是普通职工家庭,父母都很开明,无权无势,我是独生子虽然没问过爸妈能支持我多少钱,但是我估摸着能有二十万就不错了,鼠鼠本身也是学电子类专业的,本科是差一点的九八五,现在硕士是挺不错九八五的电子类,目前也在ic相关公司实习,并且秋招打算找ic相关的工作,因为考虑到ic薪资也还不错,自己绝对是能养活自己的,但是要在一二线城市买房,压力就会显得非常大了,况且我也不愿意掏空爸妈供我买房,女朋友家庭条件比我好,我爸妈支持我的她爸妈应该很轻松就能给她,而且她也说不...
马月在431摸鱼:
搞不懂,为什么不让ta给你一个未来……
如何一边实习一边秋招
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-02 16:50
实习让我意识到自己无法坚持长期上班
实习让我意识到自己无法坚持长期上班,每天一坐在工位上像个机器人一样重复着一样的工作,太煎熬了
点赞
评论
收藏
分享
06-21 17:53
华南师范大学 Java
26届找暑期实习,求大佬们指点
从3月份开始投,各种厂都试过了,要么面试没通过要么挂,没收到一份offer马上就要暑假了,求大佬们指点指点😭😭😭
BlitzIron:
校园经历去了
点赞
评论
收藏
分享
06-28 02:37
青岛工学院 Erlang
已老实,求内推
😇
一表renzha:
手写数字识别就是一个作业而已
点赞
评论
收藏
分享
不愿透露姓名的神秘牛友
07-02 15:19
还应该去华为实习吗?
天塌了,导师不放实习目前进展是,小论文5月底已投,但还没消息。 毕业需要两个工作量,小论文算是第一个,第二个工作量的idea是导师想的,丢了几篇文献让我尝试。 今天跟导师说了一下想去实习的事情,并保证了工作日下班后和周末时间做科研,每周可以线上或者书面汇报确保进度。但是被导师严词拒绝,非让我要么去实习然后不管我毕业,但是也不会卡我所有的流程(比如签字审核什么的),要么就老老实实写论文。 个人觉得实习一个多月不会影响毕业进度,但是又真的不想跟导师闹得这种不可开交的地步
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
19
分享
评论
提到的真题
返回内容
招聘动态
查看更多
现代汽车前瞻技术研发中心
京东TET
全站热榜
更多
1
...
美团面经,已oc
2.9W
2
...
我是一个能独当一面的大人吗
1.2W
3
...
大家觉得测试还能活多久
1.1W
4
...
我举报了室友面试作弊
7123
5
...
大家在大厂实习会发朋友圈吗
5968
6
...
面试稀烂但是拿到大厂offer了...
5475
7
...
工资不花,难道存起来?
5096
8
...
25届校招入职一周,目前感觉良好
4861
9
...
加班到十点,连续加班两个星期,这是实习生的强度吗?
4306
10
...
拒offer时hr很生气怎么办
4274
创作者周榜
更多
正在热议
更多
#
你觉得实习能学到东西吗
#
30823次浏览
632人参与
#
机械人集合!你是什么工程师?
#
15308次浏览
88人参与
#
现代汽车前瞻技术研发急速编程挑战赛
#
25931次浏览
210人参与
#
秋招什么时候开投比较合适?
#
18959次浏览
274人参与
#
发工资后,你做的第一件事是什么
#
67550次浏览
229人参与
#
如何准备秋招
#
18039次浏览
348人参与
#
百度工作体验
#
219176次浏览
1957人参与
#
机械人与华为的爱恨情仇
#
116180次浏览
942人参与
#
工作中哪个瞬间让你想离职
#
25433次浏览
177人参与
#
硬件应届生薪资是否普遍偏低?
#
73577次浏览
514人参与
#
不考虑转正,实习多久合适
#
31565次浏览
145人参与
#
影石Insta360求职进展汇总
#
123123次浏览
1069人参与
#
通信和硬件还有转码的必要吗
#
57246次浏览
526人参与
#
24届的你们都什么时候入职?
#
59951次浏览
424人参与
#
面试被问期望薪资时该如何回答
#
255969次浏览
1479人参与
#
实习,不懂就问
#
41792次浏览
643人参与
#
你们公司几号发工资
#
20520次浏览
139人参与
#
软开人,秋招你打算投哪些公司呢
#
102424次浏览
958人参与
#
每个月的工资都是怎么分配的?
#
24993次浏览
408人参与
#
如果你有一天可以担任公司的CEO,你会做哪三件事?
#
28973次浏览
460人参与
#
你觉得现在还能进互联网吗?
#
7436次浏览
130人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务