斐波那契数列
题目:
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)n<=39
解析:
斐波那契数列含义:
F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)
实现方式:递归和非递归两种方式
非递归实现斐波那契数列、
public int Fibonacci(int n) {
//非递归实现方式
if (n <= 0)
return 0;
if (n == 1 || n == 2) {
return 1;
}
int a = 1, b = 1, c = 0;
for (int i = 3; i <= n; i++) {
c = a + b;
b = a;
a = c;
}
return c;
}
递归实现斐波那契数列(执行慢)
public int Fibonacci(int n) {
//递归实现方式
if (n <= 0)
return 0;
if (n == 1 || n == 2)
return 1;
return Fibonacci(n - 1) + Fibonacci(n - 2);
}