1 个不稳定版本

0.1.0 2020年12月2日

#44 in #per

MIT 许可证

6KB
130

布隆过滤器

布隆过滤器是一种可以检查元素是否存在于某个集合中的数据结构。但是,它可能会错误地检查,我们称这些错误匹配为假阳性。更普遍的是,为了在1%的假阳性概率下,每个元素平均需要少于10个比特,这与集合的大小或元素的数量无关。

用法

let mut bf = BloomFilter::new(10);
let b1 = Bytes::from(&b"hello"[..]);
let b2 = Bytes::from(&b"world"[..]);

bf.add(&b1);
let filter = bf.generate();
println!("{}", bf.contains(&filter, &b1)); // true
println!("{}", bf.contains(&filter, &b2)); // false

参考资料

依赖项

~225KB