普贤教程 › 包参考
bloom 包
布隆过滤器
| 项 | 值 |
|---|---|
| 包名 | bloom |
| 版本 | 0.2.0 |
| 可用版本 | 0.1.0 / 0.2.0 |
| 入口 | bloom.px |
| 分类 | 数据结构 |
| 文件数 / 行数 | 1 / 131 |
安装与引入
bash
pxpkg init # 首次 pxpkg add bloom@0.2.0 pxpkg install
px
import bloom所属分类教程:数据结构
公开接口
| 函数 | 参数 |
|---|---|
bloom_new | nbits, k |
bloom_add | bf, item |
bloom_may_contain | bf, item |
其余 6 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
bl_positions | bf, item |
bloom_count | bf |
bloom_false_positive_rate | bf, num_items |
bloom_capacity | num_items, fpr |
bloom_clear | bf |
bloom_bit_list | bf |
包内说明(源码头注释)
text
============================================================
普贤生态库:registry/bloom —— 布隆过滤器
------------------------------------------------------------
纯函数库(无 IO、无状态,过滤器状态以 {"n","k","d"} 显式传递),
编译(px build)与解释(px run)双模式一致。
bloom_new(nbits, k) → Ok(bf) | Err k 个哈希位(1..8)
bloom_add(bf, item) → Ok(bf) | Err 插入(幂等)
bloom_may_contain(bf, item) → Ok(bool) | Err 可能包含(有假阳性,无假阴性)
哈希:item → sha256_bytes(32 字节)→ 每 4 字节一个 u32 位位置(k<=8 个)。
============================================================