5 个不稳定版本

使用旧的 Rust 2015

0.3.2 2016年9月13日
0.3.1 2016年9月13日
0.3.0 2016年9月13日
0.2.0 2016年7月15日
0.0.1 2014年11月20日

#2002数据结构

Download history 2237/week @ 2024-03-14 1077/week @ 2024-03-21 1231/week @ 2024-03-28 1068/week @ 2024-04-04 848/week @ 2024-04-11 743/week @ 2024-04-18 695/week @ 2024-04-25 955/week @ 2024-05-02 659/week @ 2024-05-09 847/week @ 2024-05-16 760/week @ 2024-05-23 888/week @ 2024-05-30 1345/week @ 2024-06-06 782/week @ 2024-06-13 741/week @ 2024-06-20 616/week @ 2024-06-27

3,675 每月下载量
22 个crate中(9个直接使用)

GPL-2.0 许可证

37KB
634

bloom

在 Rust 中实现各种近似集合成员结构。目前包括标准布隆过滤器,以及最简单的计数布隆过滤器。

将来会添加更多高级类型的 ASMS。

基本用法

extern crate bloom;
use bloom::BloomFilter;
let expected_num_items = 1000;
let false_positive_rate = 0.01;
let mut filter:BloomFilter = BloomFilter::with_rate(false_positive_rate,expected_num_items);
filter.insert(&1i);
filter.contains(&1i); /* true */
filter.contains(&2i); /* false */

安装

使用 Cargo 并将以下内容添加到你的 Cargo.toml 文件中

[dependencies]
bloom="0.2.0"

文档

这里

误报率

误报率以浮点数指定,范围为 (0,1)。这表示在 X 次探测中,X * 应该返回一个误报。更高的值会导致过滤器更小(但更不准确)。

基准测试

此 crate 包含一些基准测试来测试布隆过滤器的性能。要运行它们,您需要使用 rust nightly(基准特性尚未稳定),然后运行

cargo bench --features "do-bench"

依赖项

~97KB