斐波那契数列:前两个数之后等于后面的那个数,用js实现他的顺序
/*
* 斐波那契数列
* */
function f1(n) {
/*
先声明三个数,前两个个是前两个数,最后一个是前两个数之和
*/
let num1 =1,num2=1,sum=0;
if(n<=2){
return 1;
}else{
for (var i=3;i<=n;i++){
sum = num1 + num2;
num1=num2;
num2 = sum;
}
return sum;
}
}
console.log(f1(5)); //5
思路:声明两个数表示n的前两个数,再声明一个数表示两个数之后,然后依次把表示n的前两个数往前递增,然后把他们两个数之和赋值给num2,然后把num2的值赋值给num1,依次递增
2.用递归的方法:
function f(n) {
if(n<=2) {
return 1;
}else {
return f(n-2) + f(n-1);
}
}
console.log(f(5));