JavaScript实现斐波那契数列

什么是斐波那契数列

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=1,F(1)=1, F(n)=F(n-1)+F(n-2)(n>2,n∈N*)

JavaScript实现斐波那契数列

  • 循环
function Fib(n){
 var num1 = 1;
 var num2 = 1;
 var temp = num2;
 for(var i = 2;i < n;i ++){
   temp = num1 + num2;
   num1 = num2;
   num2 = temp;
 }
 return temp;
}
  • 递归
function Fib1( n ){
  if(n == 1 || n == 2){  //递归出口
    return 1 ;
  }else{
    return Fib( n - 1 ) + Fib( n - 2 ); //递归体
  }
}
  • 循环
function Fib2(n){
    if (n===1 || n===2) {
        return 1;
    }
    let i1 = 1, i2 = 1;
    for (let i = 2; i < n; i++){
        [i1, i2] = [i2, i1 + i2];
    }
    return i2;
}
posted @ 2021-04-19 15:01  亓亓哟  阅读(121)  评论(0编辑  收藏  举报