4 个版本 (2 个重大更新)
0.3.0 | 2019年4月5日 |
---|---|
0.2.0 | 2018年8月29日 |
0.1.1 | 2018年2月23日 |
0.1.0 | 2018年2月23日 |
#7 在 #最优
每月下载量 28 次
用于 crate-race
10KB
183 行
cycle-sort
使用循环排序算法对切片进行排序的 Rust 库。函数遵循标准库中的语义。我构建这个库是为了学习 Rust。
lib.rs
:
简单的循环排序实现。
循环排序是一种不稳定的比较排序,它最小化了写入次数。它的最佳和最坏情况性能为 O(n^2)
,因此在大量数据集上运行较慢。当写入成本较高且希望减少写入次数时,它很有用。
由于该算法在排序列表上的性能为 O(n^2)
,您可能希望在实际排序之前考虑是否需要排序。
安全性
如果传递给 cycle_sort_by
的比较函数或传递给 cycle_sort_by_key
的键提取函数发生恐慌,则排序的数据很可能会处于无效状态。