我尝试在JavaScript中玩递归。我为斐波那契数列编写了一个函数。但是,仅当参数为0时才有效fib = (x)=>{ if (x == 0 || x ==1) { return 1 } else { return fib(x-1) + fib(x+1) }}它为1返回1,但大于0的数字我得到错误,超出了最大调用堆栈大小
2 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
这不是斐波那契数列。这是斐波那契数列:
fib = (x) => {
if (x == 0 || x == 1) {
return 1;
} else {
return fib(x - 1) + fib(x - 2);
}
}
for (let i = 0; i < 10; i++) {
console.log(fib(i));
}
当然,以最简单的形式。如果超过10,您将体验到计算机成倍的计算成本。
添加回答
举报
0/150
提交
取消