下面是标准解法,循环+递归。
public class Solution {
public int addDigits(int num) {int tmp = 0;
while (true){
tmp += num % 10;
num = num / 10;
if (num == 0) break;
}
if (tmp >= 10){
return addDigits(tmp);
}else{
return tmp;
}
}
}
下面是高级解法,找规律。
public class Solution {
public int addDigits(int num) {
return 1 + (num - 1) % 9;
}
}