題目描述
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。
解題思路
使用一個實例變量保存結果,每次遞歸調用(返回值爲boolean)和 n 是否大於 0來判斷循環是否結束
實現
public class Solution {
int sum = 0;
public int Sum_Solution(int n) {
sumN(n);
return sum;
}
private boolean sumN(int n) {
sum += n;
return (n > 0) && sumN(n-1);
}
}