Crates.io | flat_bit_set |
lib.rs | flat_bit_set |
version | 0.1.0 |
source | src |
created_at | 2024-11-27 09:56:16.286643 |
updated_at | 2024-11-27 09:56:16.286643 |
description | 有序、稀疏、节省空间的 bitset,适用于小数据量 |
homepage | |
repository | https://github.com/zeng-y-l/flat_bit_set |
max_upload_size | |
id | 1462835 |
size | 82,195 |
有序、稀疏、节省空间的 bitset,适用于小数据量。
该库支持 no_std
、无 unsafe
、无依赖。
该库提供了 FlatBitSet
类型,实现了 Hash
、Ord
。
可以对 FlatBitSet
进行二元运算。既可以就地运算,也可以创建新集合。还可以通过 Thunk
类型惰性执行很多二元运算,最后一次性构建或遍历,以避免多次分配。
增删查的性能,在数据量较小、较密集时一般明显好于 HashMap
、BTreeMap
。若数据量较大且稀疏,则增删性能极差,查询性能也不如 HashMap
。二元运算和遍历的性能总是好于 HashSet
;大部分时候好于 BTreeSet
,数据稀疏时持平。此外,空间占用几乎总是最小的。