布隆过滤器

TBD布隆过滤器是一种概率数据结构。它用于测试一个元素是否是集合的成员。当然,使用其他数据结构也可以达到相同的结果。然而,布隆过滤器以节省空间和时间的方式做到这一点。在底层,布隆过滤器只是一个位数组,所有位最初都设置为零。它只支持两种操作:插入和查找。

  • 插入:
  • 对输入值进行hash处理
  • 将结果mod数组长度
  • 将相应bit设置为1
  • 查找:
  • 对输入值进行hash处理
  • 将结果mod数组长度
  • 检查对应bit是0还是1

局限性

  1. 布隆过滤器的简单实现不支持删除操作
  2. 误报率可以降低,但不能降到零

参考资料