首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
有两个文件,分别有20亿个QQ号(bigint类型,8字节)
[问答题]
有两个文件,分别有20亿个QQ号(bigint类型,8字节),我们只有2G内存,如何找到两个文件交集?
添加笔记
求解答(0)
邀请回答
收藏(32)
分享
纠错
2个回答
添加回答
0
牛客840735377号
步骤1:使用hash函数将第一个文件的所有整数映射到1000个文件中,每个文件有2000万个整数,大约160M内存,2G的内存就可以放下了,把1000个文件记为a1,a2....a10000;
步骤2:用同样的hash函数映射第二个文件到1000个文件中,这1000个文件记为b1,b2,b3......b1000;
步骤3:由于使用的是相同的hash函数,所以两个文件中一样的数字会被分配到文件下标一致的文件中,分别对a1和b1求交集,a2和b2求交集,ai和bi求交集l;
步骤4:最后将步骤3的结果汇总,即为两个文件的交集。
发表于 2021-01-23 20:47:32
回复(0)
0
牛客6107965号
<p>使用bitmap</p>
发表于 2021-01-22 23:01:08
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
阅文集团
2021
大数据开发工程师
来自:
2023届阅文大数据方...
上传者:
小小
难度:
2条回答
32收藏
2333浏览
热门推荐
相关试题
字符串全排列
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
测试工程师
安全工程师
c#工程师
数据库工程师
大数据开发工程师
瓜子二手车
2019
评论
(29)
合并二叉树
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
测试工程师
安全工程师
c#工程师
数据库工程师
大数据开发工程师
瓜子二手车
2019
评论
(7)
五月份的商品销售额为60万元,该月...
数据分析师
途虎
2021
评论
(2)
来自
途虎养车2023秋招数据...
写出下面各逻辑表达式的值(真:1,...
大数据开发工程师
阅文集团
2021
评论
(6)
来自
2023届阅文大数据方向笔试卷
执行以下程序,理论上输出的结果应最...
360集团
Python
算法工程师
2019
评论
(1)
来自
360公司-2019校招...
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题