<?php
class countFibonacci{
//使用迭代
function Method1($n) {
if ($n < 1){
return - 1;
}else{
$arr [1] = $arr [2] = 1;
for($i = 3; $i <= $n; $i++) {
$arr [$i] = $arr [$i - 1] + $arr [$i - 2];
}
}
}
//使用递归
function Method2($n){
if($n<1){
return -1;
}elseif($n==1||$n==2){
return 1;
}else{
return $this->Method2($n-1)+$this->Method2($n-2);
}
}
function Method3($n){
return (pow((1+sqrt(5))/2,$n)-pow((1-sqrt(5))/2,$n))/sqrt(5);
}
}
?>
转载于:https://my.oschina.net/selly/blog/158480