方法返回应该就像输入一个数字,假设是 345,那么输出应该是 3+4+5=12 --> 1+2 = 3。我在这里做错了什么?
public class DigitSum
{
int Sum=0;
public int compute( int MethParam )
{
int rem = MethParam%10;
Sum+=rem;
MethParam = MethParam/10;
if(MethParam>10)
compute(MethParam);
return Sum+MethParam;
}
public static void main(String[] args)
{
DigitSum ds = new DigitSum();
System.out.println(ds.compute(435));
}
}
O(1) 数字总和算法:
取任何数字的模 9 将返回该数字的数字总和,直到获得一位数字。
如果数字是 9 的倍数,则总和将为 9
一个班轮:
替代实现: