算法设计与分析——位图(BitMap)

分类目录:《算法设计与分析》总目录

相关文章:
· 位图(BitMap)
· 布隆过滤器(Bloom Filter)


位图(Bitmap),即位(Bit)的集合,可用于记录大量的 0 / 1 0/1 0/1状态。BitMap 的是用一个位来存放某种状态,适用于大规模数据,但数据状态又不是很多的情况。通常可以用来判断某个数据是否存在、某个ID是否登录等情况。

我们来看看具体存储:

假设1、2、4、7存在,则在BitMap中第1、2、4、7位为1,其余位为0,即1代表这个数存在,0代表不存在:
BitMap距离

假设需要查找的总数为 N N N,那么我们需要申请内存空间的大小为 1 + ⌊ N / 32 ⌋ 1+\lfloor N/32\rfloor 1+N/32。同时,若需查找或判断的数据类型为字符串等非整型数据,需要先通过Hash函数将其映射到整型数据,在这个过程中由于Hash函数的设定,可能将不同的数据映射成相同的整数,在判断某个字符串是否存在时就会导致假阳性。

猜你喜欢

转载自blog.csdn.net/hy592070616/article/details/127184820
今日推荐