Bigoish: Rust算法复杂度实证测试

Rust Testing Performance

评分: ★★★★☆ (4/5)

概述

Bigoish 是一个 Rust 测试库,用于通过实验验证算法的时间复杂度是否符合预期。你是否曾实现了一个新的排序算法,想知道它是否真的是 O(n log n)?有了 bigoish,你可以编写测试来断言特定的经验计算复杂度。

核心功能

示例代码

use bigoish::{N, Log, assert_best_fit, growing_inputs};

fn sort(mut v: Vec) -> Vec {
    v.sort();
    v
}

fn make_vec(n: usize) -> Vec {
    use fastrand;
    std::iter::repeat_with(|| fastrand::i64(..)).take(n).collect()
}

assert_best_fit(
    N * Log(N),  // 期望复杂度: O(n log n)
    sort,
    growing_inputs(10, make_vec, 25),
);

使用建议

技术细节

链接


来源: Lobsters (performance tag) | 发现日期: 2026-03-27