一、先要回答一个问题:什么是婓波那契数列?答案在这里:http://zh.wikipedia.org/wiki/%E6%96%90%E6%B3%A2%E9%82%A3%E5%A5%91%E6%95%B0%E5%88%97
二、看代码:
1)第一方法:递归实现:
public static void main(String[] args) {
for (int i = 0; i <= 10; i++) {
System.out.print(fibonacci(i));
System.out.print('\t');
}
}
public static int fibonacci(int i) {
if (i == 0) {
return 0;
} else if (i == 1) {
return 1;
}
return fibonacci(i - 2) + fibonacci(i - 1) ;
}
2)第二种方法:循环实现:
public static void main(String[] args) {
int[] arr = {0,0};
for (int i = 0; i <= 10; i++) {
int result = 0;
if (i == 0) {
arr[0] = 0;
result = 0;
} else if (i == 1){
arr[1] = 1;
result = 1;
} else {
result = arr[0] + arr[1];
arr[0] = arr[1];
arr[1] = result;
}
System.out.print(result);
System.out.print('\t');
}
}
大家还有更好的实现方法吗?
本文介绍了斐波那契数列的概念,并通过递归和循环两种方式实现了斐波那契数列的计算。递归方法简洁但效率较低,而循环方法通过动态更新数组元素的方式提高了计算效率。
348

被折叠的 条评论
为什么被折叠?



