计算从 1 到 N 的整数之和
以下方法使用递归计算从 0 到 N 的整数之和。
public int sum(final int n) {
if (n > 0) {
return n + sum(n - 1);
} else {
return n;
}
}
该方法是 O(N)
,并且可以使用尾调用优化简化为简单循环。事实上,有一个封闭的表单表达式,用于计算 O(1)
操作中的总和。
以下方法使用递归计算从 0 到 N 的整数之和。
public int sum(final int n) {
if (n > 0) {
return n + sum(n - 1);
} else {
return n;
}
}
该方法是 O(N)
,并且可以使用尾调用优化简化为简单循环。事实上,有一个封闭的表单表达式,用于计算 O(1)
操作中的总和。