布隆过滤器是Bit-Map的一种扩展。
如果判断一个元素是否在一个集合中,通常的做法是将所有元素保存起来,然后通过比较知道他是否在集合中。
布隆过滤器的做法是申请一个N位的位图数组与K个哈希函数,K个哈希函数都可以将元素映射到位图中0-N的位置上,
对每一个元素使用K的哈希函数,将每次映射结果对应的位图位设置为1。
对于需要判断的元素,如果这个元素的k次哈希值都对应于位图中的1,那么可以说明该元素可能在集合中。
可能是因为,有可能的位图中的1可能是被其他元素设置的。而非判断元素。
本文共 291 字,大约阅读时间需要 1 分钟。
布隆过滤器是Bit-Map的一种扩展。
如果判断一个元素是否在一个集合中,通常的做法是将所有元素保存起来,然后通过比较知道他是否在集合中。
布隆过滤器的做法是申请一个N位的位图数组与K个哈希函数,K个哈希函数都可以将元素映射到位图中0-N的位置上,
对每一个元素使用K的哈希函数,将每次映射结果对应的位图位设置为1。
对于需要判断的元素,如果这个元素的k次哈希值都对应于位图中的1,那么可以说明该元素可能在集合中。
可能是因为,有可能的位图中的1可能是被其他元素设置的。而非判断元素。
转载于:https://www.cnblogs.com/immjc/p/9443337.html