斐波那契數列:
1 1 2 3 5 8 13 21 34 55 …spa
概念:
前兩個值都爲1,該數列從第三位開始,每一位都是當前位前兩位的和
規律公式爲:
Fn = F(n-1) + F(n+1)
F:指當前這個數列
n:指數列的下標code
非遞歸寫法:blog
function fbnq($n){ //傳入數列中數字的個數 if($n <= 0){ return 0; } $array[1] = $array[2] = 1; //設第一個值和第二個值爲1 for($i=3;$i<=$n;$i++){ //從第三個值開始 $array[$i] = $array[$i-1] + $array[$i-2]; //後面的值都是當前值的前一個值加上前兩個值的和 } return $array; }
遞歸寫法:遞歸
function fbnq($n){ if($n <= 0) return 0; if($n == 1 || $n == 2) return 1; return fbnq($n - 1) + fbnq($n - 2); }