大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。
n<=39
这次比较简单可以直接写成答案即可
常见的解法:递归这里限制了n<=39,所以不会内存溢出,但是n无穷大的话可能会内存溢出
public class Solution {
public int Fibonacci(int n) {
if(n > 39) return -1;
if(n==0) return 0;
if(n==1 || n==2) return 1;
if(n > 1){
return Fibonacci(n-1)+Fibonacci(n-2);
}
return -1;
}
}
第二种解法:循环遍历赋值
public class Solution {
public int Fibonacci(int n) {
if(n >39) return -1;
if(n==0) return 0;
if(n==1) return 1;
int a =0;
int b = 1;
int c =0;
for(int i=2;i<=n;i++){
c = a+b;
a = b;
b= c;
}
return c;
}
}