斐波那契数列

1描述:这里用Js数组模拟数列。

let fn=[ ]; 

 

fn[0]=1;  

fn[1]=1;  

fn[2]=2----------fn[0]+fn[1];

fn[3]=3----------fn[1]+fn[2];

这样子:fn=[1,1,2,3,5];

设 fn的索引为n;  问n==100时候。 fn[n]的值。

 

function gen_feiblo(num){
let init_arr=[1,1];
for(let i=init_arr.length;i<num;i++){
    let temp=init_arr[i-1]+init_arr[i-2];
    init_arr.push(temp)
    
};
    return init_arr;
    
}

 

 或者利用函数递归。

 1.找到出口。  Fn(0)=1; Fn(1)=1;
 2.找到规律。  Fn(n)=Fn(n-1)+Fn(n-2)

function gen_feibo_back(n){
    if(n==1||n==0){
        return 1;
    }else{
        return gen_feibo_back(n-1)+gen_feiblo(n-2)
    }
    
}

 

posted @ 2023-09-09 20:26  七分sunshine!  阅读(1)  评论(0编辑  收藏  举报