2个版本
0.1.1 | 2019年5月12日 |
---|---|
0.1.0 | 2019年5月12日 |
#7 in #删除
31KB
805 行
Rust中的Zip树
概述
此项目实现了Tarjan的Zip树,这是一种类似于treap的数据结构,具有不同的插入和删除算法。节点排名的组织方式类似于跳表。您可以通过访问Tarjan的论文来了解更多详细信息。
实现
ZipTree API模拟标准库的BTreeMap接口。它提供插入、删除和迭代器接口。Zip树支持通过O(n)深度复制来实现clone()
。
许可协议
本项目以MIT许可证发布。
lib.rs
:
Rust中Tarjan的Zip树实现。
Zip树是一种具有不同插入和删除算法的treap。它按照跳表的方式组织节点排名,但比跳表占用更少的空间。插入和删除操作通过压缩和解压缩操作完成,而不是一系列树旋转。您可以通过访问Tarjan的论文来了解更多详细信息。
依赖关系
~560–780KB
~10K SLoC