斐波那契数列 的两种实现方式
一、先要回答一个问题:什么是婓波那契数列?答案在这里: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');}}
?大家还有更好的实现方法吗?
?
1 楼 Mr_WangB 前天 showArr(i - 2) + showArr(i - 1) ; 2 楼 bo_hai 前天 Mr_WangB 写道showArr(i - 2) + showArr(i - 1) ;