#fibonacci-sequence #fibonacci-number #fibonacci #numbers #sequence #science

无std fibext

适用于Rust的多功能斐波那契数列生成器,支持大数和可选迭代器接口

3个不稳定版本

0.2.1 2023年5月14日
0.2.0 2023年5月14日
0.1.0 2023年5月11日

#636 in 数学

每月26次下载

GPL-3.0 许可证

21KB
200

fibext

fibext 是一个适用于Rust的多功能斐波那契数列生成器,提供各种功能和自定义选项。

特性

  • 支持不同类型的无符号整数。
  • 可选启用带检查的溢出进行算术运算。
  • 使用 num_bigint 包(通过 large-numbers 功能启用)支持大数。
  • 生成斐波那契数列的迭代器实现(通过 iterator 功能启用)。

使用方法

fibext 添加到您的 Cargo.toml 文件中的依赖项

[dependencies]
fibext = "0.2.0"

fibext 包导入到您的Rust代码中

use fibext::*;

创建一个新的斐波那契数列

let fib: Fibonacci<u32> = Fibonacci::new();

遍历斐波那契数列

for number in fib.take(10) {
println!("{}", number);
}

这将打印前10个斐波那契数。

支持类型

fibext 库支持以下类型的无符号整数

  • u8
  • u16
  • u32
  • u64
  • u128

当启用 large-numbers 功能时,该库还支持来自 num_bigint 包的 BigUint

可选功能

fibext 库提供了一些可选功能,可以根据您的需求启用或禁用。这些功能通过 features 部分在您的 Cargo.toml 文件中控制。

  • std(默认启用):启用对 std 类型和使用功能的访问。当禁用时,库使用 Wrapping 的核心版本,不依赖于 std
  • checked-overflow(默认启用):启用带检查的溢出进行算术运算。当启用时,如果发生溢出,库将返回一个 ArithmeticError
  • iterator(默认启用):启用生成斐波那契数列的迭代器实现。
  • 大数 (可选):启用对大数的支持,使用 num_bigint 包。要启用此功能,请在您的 Cargo.toml 文件中的 features 部分添加 大数 功能。
[dependencies]
fibext = { version = "0.2.0", features = ["large-numbers"] }

基准测试

fibext 库包含斐波那契数列生成的基准测试。要运行基准测试,请使用以下命令

cargo bench --bench fibonacci

许可证

本项目受 GNU 通用公共许可证 v3.0 许可。有关更多详细信息,请参阅 LICENSE 文件。

依赖项

~100KB