斐波那契数列-java实现
斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34 。可以其简写为
使用Java程序实现斐波那契数列某一位的值。
代码实现方式
第一种方式(递归)
public int fibonacci (int n) {
if (n == 1 || n ==2) return 1;
else return fibonacci(n - 1) + fibonacci(n - 2);
}
第二种方式(数组)
public int fibonacci(int n) {
if (n <= 2) return 1;
int[] num = new int[n];
num[0] = 1;num[1] = 1;
for (int i = 2; i < n; i++) {
num[i] = num[i-1] + num[i-2];
}
System.out.println(Arrays.toString(num));
return num[n-1];
}
第二种方式(递推)
public int fibonacci(int n){
if (n <= 2) return 1;
int result=1,x=1,temp;
for (int i = 2; i < n; i++) {
temp = result;
result = result + x;
x = temp;
}
return result;
}