2个不稳定版本
0.4.0 | 2024年3月31日 |
---|---|
0.3.0 | 2024年3月29日 |
#1145 in 算法
每月 29 次下载
8KB
110 行
Divisors-fixed
一个用于找到整数所有因子的简约crate。尽管它的最坏情况时间复杂度(目前)仍然是O(sqrt(n)),但实际上它比在sqrt(n)以下尝试每个整数的原始方法要快得多。
这个库支持u8
、u16
、u32
、u64
、u128
和usize
类型。
这个crate最初是divisors crate的一个克隆版本,包含错误修复(因此得名),但后来随着API更改和重写而发展。
示例
let n = 240u32;
println!("{:?}", n.divisors_unordered());
println!("{:?}", n.divisors());
/*
Output:
[1, 2, 4, 8, 16, 3, 6, 12, 24, 48, 5, 10, 20, 40, 80, 15, 30, 60, 120, 240]
[1, 2, 3, 4, 5, 6, 8, 10, 12, 15, 16, 20, 24, 30, 40, 48, 60, 80, 120, 240]
*/
用法
将以下内容添加到您的Cargo.toml
[dependencies]
divisors = "0.4.0"
文档
cargo doc --open
基准测试
cargo bench
测试
cargo test
许可证
MIT.