#除数 #整数 #数字 #版本 #查找 #错误 #名称

divisors_fixed

除数crate的固定和增强版本

2个不稳定版本

0.4.0 2024年3月31日
0.3.0 2024年3月29日

#1145 in 算法

每月 29 次下载

MIT 许可证

8KB
110

Divisors-fixed

一个用于找到整数所有因子的简约crate。尽管它的最坏情况时间复杂度(目前)仍然是O(sqrt(n)),但实际上它比在sqrt(n)以下尝试每个整数的原始方法要快得多。

这个库支持u8u16u32u64u128usize类型。

这个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.

无运行时依赖