不和谐排序集 SortedSet是一种快速高效的数据结构,可提供某些保证和功能。 核心数据结构和算法是使用以Rust编程语言在“本机实现的功能”中实现的。 安装 将SortedSet添加到您的依赖项中,然后使用mix do deps.get, deps.compile进行安装 def deps do [ { :sorted_set_nif , " ~> 1.0.0 " } ] end 实施细节 在内部,将存储在SortedSet中的Elixir术语转换为Rust等效项,并存储在Vector的Vector中。 该结构类似于跳过列表,几乎SortedSet上的每个操作都会在存储桶中执行线性扫描,以找到拥有该术语的存储桶,然后在存储桶中进行二进制搜索以完成操作。 为什么不只是术语向量? 人们探索了这种方法,但是当Vector需要超出其能力时,将条款复制到新的更大Vector上