1. 程式人生 > >js實現斐波那契數列

js實現斐波那契數列

class bsp clas highlight con lse return const style

1:遞歸

function fb1(n){
if(n <= 2){
return 1;
}else{
return fb1(n-1) + fb1(n-2);
}
}

  

2:for 循環(叠代)

function getFib(num) {
      var num1 = 1;
      var num2 = 1;
      var sum = 0;
      for (var i = 3; i <= num; i++) {
        sum = num1 + num2;
        num1 
= num2; num2 = sum; } return sum; }

3:閉包

const fb4 = function(){
    var mem = [0,1];
    var f = function(n){
        var res = mem[n];
        if(typeof res !== ‘number‘){
            mem[n] = f(n-1) + f(n-2);
            res = mem[n];
        }
        return res;
    }
    return f;
}();

  

js實現斐波那契數列