php實現斐波那契數列


斐波那契數列: 
1 1 2 3 5 8 13 21 34 55 …

概念: 
前兩個值都為1,該數列從第三位開始,每一位都是當前位前兩位的和 
規律公式為: 
Fn = F(n-1) + F(n+1) 
F:指當前這個數列 
n:指數列的下標

 

非遞歸寫法:

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);
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM