当前位置: 首页 > news >正文

微信朋友圈做网站推广赚钱吗网站建设费专票会计分录

微信朋友圈做网站推广赚钱吗,网站建设费专票会计分录,定制app软件开发,自建企业邮箱布隆过滤器(Bloom Filter)是一种空间效率高、查询速度快的概率型数据结构,主要用于判断某个元素是否在一个集合中。它的核心特点是:判断为“存在”可能是错的(有一定误判率)判断为“不存在”一定是对的一、…

布隆过滤器(Bloom Filter)是一种空间效率高、查询速度快概率型数据结构,主要用于判断某个元素是否在一个集合中。它的核心特点是:

  • 判断为“存在”可能是错的(有一定误判率)

  • 判断为“不存在”一定是对的


一、布隆过滤器的基本原理

布隆过滤器是一个**位数组(bit array)多个哈希函数(Hash Functions)**组成的。

1. 初始化

  • 假设有一个长度为 m 的位数组 bit[],初始每一位都是 0

  • k 个不同的哈希函数:hash1, hash2, ..., hashk


2. 添加元素 x

  • x 分别使用 k 个哈希函数,计算出 k 个下标位置:
    hash1(x) % m, hash2(x) % m, ..., hashk(x) % m

  • 将这 k 个位置上的 bit[i] 都置为 1


3. 查询元素 y 是否存在

  • y 同样使用 k 个哈希函数,得到 k 个位置

  • 检查这些位置是否都为 1

    • 如果有任何一个位置为 0:说明 y 一定不在集合中

    • 如果所有位置都是 1:可能存在,但不能百分百确认(可能是其他元素造成了这些位置为 1)


二、示意图(简化)

bit array:   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
添加 "apple" → hash1=3, hash2=7, hash3=1 → 置位:bit[3]=1, bit[7]=1, bit[1]=1bit array:   [0, 1, 0, 1, 0, 0, 0, 1, 0, 0]查询 "apple":
→ 取同样3个位置,如果全是1,返回“可能存在”查询 "banana":
→ 假如 hash 到 bit[1], bit[4], bit[6] → bit[4] 为0 → 一定不存在

三、布隆过滤器的特点

✅ 优点:

  • 空间效率高:相比于用 set/hashset 来存储大量字符串,内存节省非常多

  • 插入、查询速度快:时间复杂度为 O(k)k 是哈希函数数量

❌ 缺点:

  • 可能误判存在误判率可控制,但不能为 0

  • 不能删除元素(除非使用 Counting Bloom Filter)

  • 无法获取元素,只能判断存在性


四、布隆过滤器的使用场景

  1. 防止缓存穿透(判断 key 是否可能存在于数据库中)

  2. 黑名单系统(判断一个 IP 是否可能为恶意)

  3. 网络爬虫去重(判断 URL 是否已抓取过)

  4. 区块链、分布式系统中快速去重或状态判断


五、误判率与参数关系(高级)

布隆过滤器的误判率与以下有关:

  • n:插入的元素个数

  • m:位数组大小

  • k:哈希函数数量

误判率公式近似为:

P=(1−e−kn/m)kP = \left(1 - e^{-kn/m} \right)^k

可以通过这个公式反推设计布隆过滤器所需的 mk 来满足特定的误判率要求。

http://www.dtcms.com/a/614700.html

相关文章:

  • 友元的作用与边界
  • 如何提高英语口语?
  • (6)框架搭建:Qt实战项目之主窗体快捷工具条
  • 做阿里云网站空间建设工程施工合同实例
  • web中间件——Tomcat
  • Linux中管理员和一般用户的用法小结
  • html手机网站模板html5网页设计教程
  • 【Mac】开发环境使用/维护
  • 网站代码设计惠州网站建设排名
  • 精美网站建设wordpress gae
  • 【STM32MP157 异核通信框架学习篇】(10)Linux下Remoteproc相关API (下)
  • 企业建站服务退役军人215专业品牌网站建设
  • 杭州模板网站建站做国外夏令营的网站
  • 基于SpringBoot的房屋租赁管理系统【协同过滤推荐算法+可视化统计+合同签署】
  • 【MySQL | 基础】函数
  • Java Set
  • (60页PPT)数据治理与数据安全防护方案(附下载方式)
  • DSAC-T算法实现控制倒立摆
  • 学校网站建设需要多少钱wordpress添加首页导航
  • 开发区网站制作公司wordpress+系统安装
  • 什么是性能测试?它的分类?(负载测试、压力测试、并发测试等)
  • 4.3 Go 协程:goroutine
  • 查询缓存8.0
  • 【PostgreSQL】查询所有表和视图
  • 页面布局练习
  • Cortex-M3 02-地址映射
  • 大丰做网站哪家公司好大理州城乡建设局官方网站
  • 推荐做素菜的网站电商网站开发环境怎么写
  • 企业建设网站的功能是什么意思wordpress单用户案例
  • 曼朗策划网站建设新闻源