斐波那契数列是一个奇妙的数列,我们可以用程序模拟该过程
题目:请写出一个函数,该函数会返回第 n 个斐波那契数。
我是用数学把 斐波那契 模拟出来
function fobonacci(i){
if(!(i-1)||!(i)){//解决前两个毫无规律的数 0,1
return i
}
var q = 0,//定义前两个数q,h分别为0,1
z = 0,//用于帮助q,h往后移
h = 1;
i--;//初始化i
while(i){//循环进行运算
z = h;
h = z + q;
q = z;
i--;
}
return h;
}
比较经典的写法是用递归
function fobonacci(i){
if(i < 2)return i;
return fobonacci(i-1) + fobonacci(i-1);
//return i < 2 ? i : fobonacci(i-1) + fobonacci(i-1);两行合成一行
}
递归要加强训练了。