斐波那契数列
# 斐波那契数列
# 基本内容
function fibonacci(n) {
if (n === 0) return 0
if (n <= 2) return 1
return fibonacci(n - 1) + fibonacci(n - 2)
}
1
2
3
4
5
2
3
4
5
# 尾递归优化
调用下一个函数时,让上一个函数上下文释放,不会造成调用栈溢出
function fibonacci(n, result1, result2) {
if (n === 0) return 0
if (n <= 2) return result2
return fibonacci(n - 1, result2, result1 + result2)
}
1
2
3
4
5
2
3
4
5
上次更新: 2021/09/13, 15:11:59