天天看點

JavaScript實作斐波那契數列

斐波那契數列,又稱黃金分割數列,指的是這樣一個數列:1,1,2,3,5,8,13,21……從第3個數字開始,每個數字等于它前面兩個數字之和

方法1:遞歸

function fib(n){
    if(n==1 || n==2){
        return 1;
    }
    return fib(n-1) + fib(n-2);
}
           

方法2:for循環實作

function fb(n){
    var res = [1,1];
    if(n == 1 || n == 2){
        return 1;
    }      
    for(var i=2;i<n;i++){
        res[i] = res[i-1] + res[i-2];
    }
    return res[n-1];
}
           

function fb(n){
    var a,b,res;
    a = b = 1;
    for(var i=3;i<=n;i++){
        res = a + b;
        a = b;
        b = res;
    }
    return res;
}
           

繼續閱讀