# leetcode
# 尾递归
尾递归就是把变化的参数传递给递归函数变量。
例如,斐波拉其数列:
// 普通递归
var fib = function(N) {
if (N < 2) return N;
return fib(N - 1) + fib(N - 2);
};
// 尾递归优化
var fib = function(N, a = 0, b = 1) {
return N === 0 ? a : fib(N - 1, b, a + b);
};
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
1. 两数之和 →