斐波那契数列

来源:互联网 发布:淘宝会员名怎么修改吗 编辑:程序博客网 时间:2024/05/21 22:30

1,1,2,3,5,8,13,21,34....求第30位的数字是多少,要求编写递归函数和非递归函数实

数列从第三项开始,每一项都等于前两项之和。

F0=0,F1=1,Fn=F(n-1)+F(n-2)

用php代码实现

<?php  function fb($n){      $array = array();      $array[0] = 1;      $array[1] = 1;      for($i=2;$i<$n;$i++){          $array[$i] = $array[$i-1]+$array[$i-2];      }      echo "<pre>";    print_r($array);  }  fb(30);  echo "递归"  function fb_rec($n){      if($n==1||$n==2){return 1;}      else{          return fb_rec($n-1)+fb_rec($n-2);      }  }  echo fb_rec(30);  ?>  
非递归递归
以上可以看出递归效率很低。。

 
原创粉丝点击