斐波那契数列
题目
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。
n<=39
思想
1.递归,找到递归出口和递归体。
2.非递归,将递归体用变量存起来,循环。
代码1(递归)
public static int fibonacci(int n) {
if (n<2)
return n;
return fibonacci(n-1)+fibonacci(n-2);
}
代码2(非递归)
public int Fibonacci(int n) {
if (n<2)
return n;
int fib1 = 0;
int fib2 = 1;
int fiboNum = 0;
for (int i = 2; i <= n ; i++) {
fiboNum = fib1 + fib2;
fib1 = fib2;
fib2 = fiboNum;
}
return fiboNum;
}