当前位置:首页 > PHP教程 > php应用 > 列表

php实现斐波那契数列代码分享

发布:smiling 来源: PHP粉丝网  添加日期:2021-08-23 10:16:24 浏览: 评论:0 

这篇文章主要介绍了php实现斐波那契数列代码分享,具有一定借鉴价值,需要的朋友可以参考下。

斐波那契数列指的是这样一个数列 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. <?php  
  2. function fib($n){  
  3.   $array = array();  
  4.   $array[0] = 1;  
  5.   $array[1] = 1;  
  6.   for($i=2;$i<$n;$i++){  
  7.     $array[$i] = $array[$i-1]+$array[$i-2];  
  8.   }  
  9.   print_r($array);  
  10. }  
  11. fib(10);  
  12. echo "\n------------------\n";  
  13. function fib_recursive($n){  
  14.   if($n==1||$n==2){return 1;}  
  15.   else{  
  16.     return fib_recursive($n-1)+fib_recursive($n-2);  
  17.   }  
  18. }  
  19. echo fib_recursive(10);  
  20. ?> 

作为C和java的程序猿,在第一次在写非递归的时候,忘记了变量前加$,悲催。

输出结果

  1. Array  
  2. (  
  3.   [0] => 1  
  4.   [1] => 1  
  5.   [2] => 2  
  6.   [3] => 3  
  7.   [4] => 5  
  8.   [5] => 8  
  9.   [6] => 13  
  10.   [7] => 21  
  11.   [8] => 34  
  12.   [9] => 55  
  13. )  
  14. ------------------  
  15. 55

Tags: php斐波那契数列

分享到:

相关文章