有小伙伴在去哪的面试中遇到了手撕斐波那契数列的题,然后自己就百度查看了一下:
斐波那契数列,又称为黄金分割数列。指的是这样一个数列:1、1、2、3、5、13、18....,在数学上,斐波那契数列以递归的方法定义:F(0)=1,F(1)=1,F(n) = F(n-1)+F(n-2);
那么用js写一个斐波那契数列怎么写呢
function fibona(end){
var num1 = 0,num2 = 1,num3;
var arr = [];
for(var i = 3;i<=end;i++){
num3 = num1+num2;
num1 = num2;
num2 = num3;
if (num3>=end) {
break;
}
arr.push(num3);
}
return arr;
}
console.log(fibona(20));
斐波那契求和
//菲波那切数列求和
function fibona(n){
if(n == 0){
return 0;
}else if(n == 1){
return 1;
}else{
return fibona(n-1)+fibona(n-2);
}
}
console.log(fibona(10));
网友评论