测试代码
约 207 字小于 1 分钟
2026-01-27
斐波那契数列的概念是:F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2)
fn fib(n:u64)->u64{
if n == 0 {
0
}else if n == 1 {
1
}else {
let mut a:u64 = 0;
let mut b:u64 = 1;
for _ in 2..=n{
let c = a+b;
a = b;
b = c;
}
b
}
}还有一种更简单的方法:使用match匹配,在 Rust 中,match 是一个控制流运算符,用于模式匹配(pattern matching)。它类似于其他语言中的 switch 语句,但功能更强大、更安全。
fn fib(n: u64) -> u64 {
match n {
0 => 0, // 精确匹配 F₀
1 => 1, // 精确匹配 F₁
_ => { // 通配符:匹配所有 ≥2 的值
let (mut a, mut b) = (0u64, 1u64);
for _ in 2..=n {
let c = a + b;
a = b;
b = c;
}
b
}
}
}贡献者
flycodeu
版权所有
版权归属:flycodeu
