2个不稳定版本
0.2.0 | 2024年5月7日 |
---|---|
0.1.0 | 2020年6月11日 |
#720 在 数据结构 中
31,132 每月下载量
用于 11 个crate (4 直接)
75KB
2K SLoC
sorted_vector_map
sorted_vector_map
是一个有序映射和集合(类似于 std::collections::BTreeMap
和 std::collections::BTreeSet
)的实现,使用有序向量作为后端存储。
当数据频繁从有序源加载,少量查询,并且很少通过插入或删除修改时,有序向量映射是合适的。
通过优化 insert
以特别处理有序插入,从有序序列加载是 O(n)。扩展序列也是优化的,其中在单个操作中将大小为 n 的映射或集合扩展为包含 m 个元素是 O(n + m log m)。否则,从无序序列加载是 O(n^2)。
查找是 O(log n) 通过二分搜索。插入和删除都是 O(n),集合操作(如交集、并集和差集)也是如此。
sorted_vector_map
是 rust-shed 的一部分。有关更多文档(包括贡献指南),请参阅 rust-shed 仓库。
许可证
sorted_vector_map 同时受 MIT 和 Apache 许可证,版本 2.0 许可,如 LICENSE-MIT 和 LICENSE-APACHE 文件中所述。
依赖项
~1MB
~20K SLoC