#b-tree #forest #set #map

无std alexcrichton-cranelift-bforest

B+树的森林

2个不稳定版本

0.53.0 2020年1月10日
0.52.0 2020年1月10日

#10 in #btree

Download history 28/week @ 2024-03-14 36/week @ 2024-03-21 76/week @ 2024-03-28 32/week @ 2024-04-04 48/week @ 2024-04-11 61/week @ 2024-04-18 44/week @ 2024-04-25 32/week @ 2024-05-02 32/week @ 2024-05-09 33/week @ 2024-05-16 28/week @ 2024-05-23 26/week @ 2024-05-30 21/week @ 2024-06-06 23/week @ 2024-06-13 31/week @ 2024-06-20 14/week @ 2024-06-27

95 每月下载量
11 个crate中使用 (via alexcrichton-cranelift-co…)

Apache-2.0 WITH LLVM-exception

210KB
4.5K SLoC

此crate包含由Cranelift代码生成器核心使用的基于数组的结构,代表了一组小有序集合或映射。

这些不是通用数据结构,它们在某种意义上比标准库中的 BTreeSetBTreeMap 类型更快。

权衡是不同的

  • 键和值预期较小且可复制。我们针对32位类型进行优化。
  • 使用比较对象来比较键,允许更小的“无上下文”键。
  • 空树具有非常小的32位占用空间。
  • 森林中的所有树可以在常数时间内清除。

lib.rs:

B+树的森林。

此crate提供了一组表示小有序集合或映射的数据结构。它实现为一个B+树的森林,所有节点都从同一个池中分配。

这些不是通用数据结构,它们在某种意义上比标准库中的 BTreeSetBTreeMap 类型更快。

权衡是不同的

  • 键和值预期较小且可复制。我们针对32位类型进行优化。
  • 使用比较对象来比较键,允许更小的“无上下文”键。
  • 空树具有非常小的32位占用空间。
  • 森林中的所有树可以在常数时间内清除。

依赖项