布隆过滤器原理
一个大型的位数组和几个不一样的无偏hash函数,图中f、g、h,就是把元素hash值算得比较均匀,让元素被hash映射到数组中的位置比较随机
向布隆过滤器中添加key时,会使用多个hash函数对key进行hash,算得一个整数索引值,然后对位数组长度进行取模运算得到一个位置,巍哥hash函数都会算得一个不同的位置,再把位数组的这几个位置都置为1,就完成了add操作
向布隆过滤器询问key是否存在时,跟add一样,也会把hash的几个位置都算出来,看看是否都为1,只要有一个是0,那么说明布隆过滤器中不存在这个key