求1+2+3+…+n
C++,递归 + &&的短路原则。
&&逻辑运算的短路原则就是,如果左边已经为false,则不再计算右边。
所以如果碰到左边为0,则不计算右边,终止递归。
class Solution {
public:
int Sum_Solution(int n) {
int ans = n;
n && (ans += Sum_Solution(n - 1));
return ans;
}
};
C++,递归 + &&的短路原则。
&&逻辑运算的短路原则就是,如果左边已经为false,则不再计算右边。
所以如果碰到左边为0,则不计算右边,终止递归。
class Solution {
public:
int Sum_Solution(int n) {
int ans = n;
n && (ans += Sum_Solution(n - 1));
return ans;
}
};