4 个版本 (重大更新)

0.4.0 2020 年 10 月 17 日
0.3.0 2019 年 5 月 29 日
0.2.0 2019 年 3 月 2 日
0.1.0 2019 年 2 月 15 日

#18#rb-tree

AGPL-3.0

59KB
1.5K SLoC

左倾红黑树

Rustdoc Build Status License: AGPL v3

此包实现了 LLRB,即左倾红黑树,这是一种流行的数据结构,具有以下特性

  • 自我平衡数据结构。
  • 针对内存索引进行了优化。
  • LLRB 实例中的每个条目都对应一个 {键,值} 对。
  • 键类型和值类型可参数化。
  • 通过 create()、set()、get()、delete() API 进行 CRUD 操作。
  • 读取优化。
  • 全表扫描,以遍历所有条目。
  • 范围扫描,遍历介于 lowhigh 之间。
  • 反向迭代。

请注意,此 LLRB 实现不提供 持久性保证非线程安全

许可

llrb-index 的默认许可为 AGPL-3.0 许可。要重新许可此源代码,您可以直接联系作者或在此处发布您的请求 #1

兼容性策略

llrb-index 将正式支持 Rust 稳定编译器和夜间构建的最新版本。

有用链接

  • 有关 LLRB 算法的更多信息,请参阅此 维基百科链接
  • 关于 get() 和 range() API 设计选择的 讨论

依赖关系

~550–780KB
~10K SLoC