位图(
Bitmap),即位(Bit)的集合,是一种数据结构,可用于记录大量的0-1状态,在很多地方都会用到,比如Linux内核(如inode,磁盘块)、Bloom Filter算法等,其优势是可以在一个非常高的空间利用率下保存大量0-1状态。
BitMap的原理
BitMap 的基本原理就是用一个bit 位来存放某种状态,适用于大规模数据,但数据状态又不是很多的情况。通常是用来判断某个数据存不存在的。
举例:
在
Java里面一个int类型占4个字节,
假如要对于
10亿
个
int
数据进行处理呢?
10亿*4/1024/1024/1024=4个G左右,
需要
4个G的内存。
如果
能够采用
bit储,10_0000_0000Bit=1_2500_0000byte=122070KB=119MB, 那么在存储空间方面可以大大节省。