斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368........
这个数列从第3项开始,每一项都等于前两项之和。
F0=0,F1=1,Fn=F(n-1)+F(n-2)
递归版和非递归版。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<?php function fib( $n ){ $array = array (); $array [0] = 1; $array [1] = 1; for ( $i =2; $i < $n ; $i ++){ $array [ $i ] = $array [ $i -1]+ $array [ $i -2]; } print_r( $array ); } fib(10); echo "\n------------------\n" ; function fib_recursive( $n ){ if ( $n ==1|| $n ==2){ return 1;} else { return fib_recursive( $n -1)+fib_recursive( $n -2); } } echo fib_recursive(10); ?> |
作为C和java的程序猿,在第一次在写非递归的时候,忘记了变量前加$,悲催。
输出结果
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
Array ( [0] => 1 [1] => 1 [2] => 2 [3] => 3 [4] => 5 [5] => 8 [6] => 13 [7] => 21 [8] => 34 [9] => 55 ) ------------------ 55 |
总结
以上就是本文关于php实现斐波那契数列代码分享的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:http://blog.csdn.net/qiandublog/article/details/53286536