51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#40亿
【面试被虐】如何只用2GB内存从20亿,40亿,80亿个整数中找到出现次数最多的数?
这几天小秋去面试了,不过最近小秋学习了不少和位算法相关文章,例如【面试现场】如何判断一个数是否在40亿个整数中?【算法技巧】位运算装逼指南对于算法题还是有点信心的,,,,于是,发现了如下对话。面试官:如果我给你2GB的内存,并且给你20亿个int型整数,让你来找出次数出现最多的数,你会怎么做?小秋:(嗯?怎么感觉和之前...
代码星球
·
2020-08-13
面试
如何
只用
2GB
内存
判读40亿数字中是否有某个数字
网上大部分是使用的bitmap算法。大体思路是:一个字节(Byte)在计算机中占8位(bit),每个位(bit)可以表示一个数字,1表示含有,0表示不含有。1个32位系统的int类型可以存储2的32次方个bit位,大约是42亿多点。这样40亿需要40/8=5亿字节,1M=1024KB*1024=1042576Byt...
代码星球
·
2020-04-05
数字
判读
40亿
是否
某个
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他