斐波那契数列
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) } }