题目:

题解:
1、递归法
解题思路:
复杂度分析:
- 时间复杂度 O(n) : 计算 n + (n-1) + … + 2 + 1 需要开启 n 个递归函数。
- 空间复杂度 O(n) : 递归深度达到 n ,系统使用 O(n) 大小的额外空间。
代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15class Solution {
int res = 0;
public int sumNums(int n) {
boolean b = n > 1 && sumNums(n - 1) > 0;
res += n;
return res;
}
}
// 或者
class Solution2 {
public int sumNums(int n) {
boolean x = n > 1 && (n += sumNums(n - 1)) > 0;
return n;
}
}
