2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -1,16 +1,12 @@
|
|||
use std::mem;
|
||||
fn main() {
|
||||
fn fib(n: i32) -> i32 {
|
||||
fn _fib(n: i32, a: i32, b: i32) -> i32 {
|
||||
match (n, a, b) {
|
||||
(0, _, _) => a,
|
||||
_ => _fib(n-1, a+b, a)
|
||||
}
|
||||
}
|
||||
fibonacci(0,1);
|
||||
}
|
||||
|
||||
_fib(n, 0, 1)
|
||||
}
|
||||
|
||||
for n in 0..20 {
|
||||
println!("{}", fib(n));
|
||||
fn fibonacci(mut prev: usize, mut curr: usize) {
|
||||
mem::swap(&mut prev, &mut curr);
|
||||
if let Some(n) = curr.checked_add(prev) {
|
||||
println!("{}", n);
|
||||
fibonacci(prev, n);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue