C - 位集向量和布隆过滤器之间的区别
问题描述:
所以我明白,位集向量本质上可以为每个位存储true/false集,但是我对这个和bloom过滤器之间的区别感到困惑,我理解bloom过滤器使用散列函数并可以返回误报,但是他们可以存储的数据类型和函数的实际区别是什么?C - 位集向量和布隆过滤器之间的区别
答
位集向量只是一个任意位数的大字段,可以使用它们的索引单独设置。
bloom过滤器是一种集合(不包含数据本身),允许快速决定元素是否包含在集合中。它是建立顶部的某种bitset向量,在插入元素或读取它们以检查元素是否被包含(没有给你直接访问其底层位向量)时,将后者的几个位设置为1。
Bitset矢量?听起来更像是C++ ... – ThingyWotsit
@ThingyWotsit我已经制作了自己的ADT,它以一种位向量的方式工作,更多地寻找它背后的理论:)任何澄清? – realicado
https://en.wikipedia.org/wiki/Bloom_filter – alk