题目描述
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0 n<=39)
这是递归思路看的比较简洁
public static int Fibonacci(int n) {
if (n < 0) {
return 0;
}
if (n <= 1) {
return n;
}
if (n == 2) {
return 1;
}
int pre = Fibonacci(--n);
int prepre = Fibonacci(--n);
return pre + prepre;
}
这种是比较常规的方法,性能比上面的好
public static int Fibonacci(int n) {
int[] arr = new int[n+2];
arr[0] = 0;
arr[1] = 1;
for(int i=1;i<=n;i++){
arr[i+1] = arr[i]+arr[i-1];
}
return arr[n];
}