sort-research-rs 是一个用 Rust 语言编写的、专注于排序算法研究的测试与基准测试套件。
github.com/Voultapher/sort-research-rs
这个项目的核心目标是回答关于排序算法的两个基本问题:
1️⃣这个排序算法实现正确吗?
2️⃣这个排序算法实现快吗?
为了实现这一目标,项目构建了一整套强大的工具和框架,其主要内容包括:
1️⃣测试套件:项目提供了一个详尽的测试环境,用于验证排序算法的正确性。
2️⃣基准测试:包含一个灵活的基准测试套件,可以针对不同类型、模式和大小的数据进行性能测试和比较。
3️⃣模糊测试:项目集成了一个模糊测试工具,用于发现排序算法中潜在的、不易察觉的 bug。
4️⃣新算法的实现:
ipnsort: 作者实现的一种新颖、高效且稳健的不稳定排序算法。
driftsort: 作者实现的另一种高效、通用且稳健的稳定排序算法。
5️⃣现有算法的集成:为了对比研究,项目中还包含了多种来自 Rust 标准库、C++ 和 C 的经典排序实现(如 cpp_pdqsort)。
6️⃣跨语言支持:虽然项目本身是基于 Rust 的,但它设计了一个 C API 包装器,使其测试和基准测试框架也能够应用于 C/C++ 等其他语言编写的排序实现。