19 lines
374 B
Rust
19 lines
374 B
Rust
fn main() {
|
|
divan::main();
|
|
}
|
|
|
|
#[divan::bench(args = [1, 2, 4, 8, 16, 32, 64, 128])]
|
|
pub fn fibonacci_loop(n: i32) -> i32 {
|
|
let mut a = 0;
|
|
let mut b = 1;
|
|
for _ in 0..n {
|
|
(a, b) = (b, a + b);
|
|
}
|
|
b
|
|
}
|
|
|
|
#[divan::bench(args = [1, 2, 4, 8, 16, 32, 64, 128])]
|
|
pub fn fibonacci_fold(n: i32) -> i32 {
|
|
(0..n).fold((0, 1), |(a, b), _| (b, a + b)).1
|
|
}
|