// 1. 递归法(×)
// function fib(n) {
// if (n < 2) return n
// return fib(n - 1) + fib(n - 2)
// }
// 2. 尾递归(√)
function fib(n) {
return calcFib(0, 1, n)
}
function calcFib(a, b, n) {
if (n === 0) return a
return calcFib(b, a + b, n - 1)
}
console.log(
fib(100)
)
尾调用优化 JavaScript 递归
最新推荐文章于 2024-07-19 12:58:53 发布