//该算法是Java编写的斐波那契数列
public class FibonaQi {
public static void main(String[] args) {
System.out.println("采用循环实现斐波那契数列!");
System.out.println("第4项斐波那契数列的值为:" + fibonacci(4));
System.out.println("采用递归实现斐波那契数列!");
System.out.println("第4项斐波那契数列的值为:"+generateFibonacci(4));
}
/**
* 采用递归实现斐波那契数列生成函数,效率低
*/
public static int generateFibonacci(int n) {
if (n == 0) {
return 0;
}
if (n == 1) {
return 1;
}
return generateFibonacci(n - 1) + generateFibonacci(n - 2);
}
/**
* 采用循环实现斐波那契数列
* 存储数列中间项,求得结果
*/
public static int fibonacci(int n)
{
int[] result = {0,1};
if(n<2)
return result[n];
int fibNMinusOne = 1;
int fibNMinusTwo = 0;
int fibN = 0;
for(int i=2;i<=n;i++)
{
fibN = fibNMinusOne+fibNMinusTwo;
fibNMinusTwo=fibNMinusOne;
fibNMinusOne=fibN;
}
return fibN;
}
}
运算结果如下所示:
采用循环实现斐波那契数列!
第4项斐波那契数列的值为:3
采用递归实现斐波那契数列!
第4项斐波那契数列的值为:3
Process finished with exit code 0
参考链接:https://www.cnblogs.com/gl-developer/p/6445445.html