【数据结构】——位图、布隆过滤器

一、位图

1.位图原理

这里是引用
4个字节本来只能存储一个int,而现在使用位图我们就存了(映射)32个数字,也就是存储的倍数为原来的32倍。

2.位图应用

  1. 给定100亿个整数,设计算法找到只出现一次的整数
    将100亿个数分拆成1000份文件,再将每份文件里使用位图,并用两位bit表示数字出现的次数,00存出现0次的数,01存放出现1次的数,10存放出现多次的数,11舍弃,再将1000份中出现一次的数全部合并到一个文件里存放即可。
  2. 给两个文件,分别有100亿个整数,我们只有1G内存,如何找到两个文件交集
  1. 使用hash函数将第一个文件的所有整数映射到1000个文件中,每个文件有1000万个整数,大约40M内存, 内存可以放下,把1000个文件记为a1,a2,a3……a1000,用同样的hash函数映射第二个文件到1000个文件中,这1000个文件记为b1,b2,b3……b1000
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值