O(1)做法是个数学题,是一个公式。dr(n) = 1 + (n - 1) % 9
我的recursion代码:
public int addDigits(int num) {
String str = num + "";
if (str.length() == 1) {
return Integer.parseInt(str);
}
int newDigit = 0;
for (int i = 0; i < str.length(); i++) {
newDigit += str.charAt(i) - '0';
}
return addDigits(newDigit);
}