Fibonacci:
简单的递归实现
function fib(n){
if(n==0)
return 0;
else if(n==1)
return 1;
else{
return fib(n-1)+fib(n-2);
}
}
console.log(fib(10)); //55
注意:数字不能太大,会卡死,这是简单的实现原理,也不具备保存数据的功能
for循环实现
function fibonacci(n){
var num1=0,num2=1,sum;
if(n==0)
return num1;
else if(n==1)
return num2;
else{
for(var i=2;i<=n;i++){
sum = num1+num2;
num1 = num2;
num2 = sum;
}
return sum;
}
}
console.log(fibonacci(10)); //55
阶乘(Factorial):
递归实现
function factorial(n){
if(n==0)
return 1;
else{
return n*factorial(n-1);
}
}
console.log(factorial(5)); //120