everycode
everycode copied to clipboard
2014年11月21日-.-22日
周末的惊喜,试试递归,依旧还是实现一个斐波那契数。
/*
参数 number
返回 number
*/
function fib(num){
}
fib(1); // === 0
fib(2); // === 1
fib(3); // === 1
fib(4); // === 2
fib(5); // === 3
function fib(num){
return (num ^ 1) ? ((num | 3) === 3 ? 1 : (fib(num - 1) + fib(num - 2))) : 0;
}
...0. 0 惊喜在哪呢?
var fibNum = function(i) {
if (i <= 1) {
return 0;
}
if (i == 2) {
return 1;
}
return arguments.callee(i - 1) + arguments.callee(i - 2);
};
上一个学弟的:
function fib(num) {
return num.toString().match(/^[12]$/) !== null ? (num - 1) : (fib(num - 1) + fib(num - 2));
}
function fib(num){
return num<3?--num:fib(num-1)+fib(num-2)
}