3 个不稳定版本
0.2.1 | 2020年1月14日 |
---|---|
0.2.0 | 2020年1月11日 |
0.1.0 | 2020年1月11日 |
#1682 在 算法 中
10KB
125 行
福特-约翰逊算法
又称 归并插入排序.
这是一种在速度和内存消耗方面相当低效的排序算法。主要优势是它使用的比较次数非常少。对于每次比较都非常昂贵的情况(例如,你需要进行网络请求、查询数据库或请求人工输入),这可能是有用的。
API
由于这个算法只有在比较昂贵时才有用,因此 API 要求你明确提供比较函数。
示例用法
假设你有一系列项目,并希望通过重复比较元素对来对这些项目进行排序。
-
在一个
Vec<(T, T), Ordering>
中跟踪人工提供的比较。 -
使用基于已知排序的比较函数对列表进行排序。在我们没有所需排序的地方,任意选择。存储第一对。
-
请用户对第一未知排序进行排序。
-
重复。最终你将拥有完全排序项目所需的全部排序。