求一个数的7进制表示。
这题跟Excel Sheet有点像。
这类题可以用递归。
我的代码:
public String convertToBase7(int num) {
int n = Math.abs(num);
StringBuilder sb = new StringBuilder();
while (n / 7 > 0) {
sb.insert(0, n % 7);
n /= 7;
}
sb.insert(0, n);
if (num < 0) {
sb.insert(0, "-");
}
return sb.toString();
}
别人的代码:
用了递归
public String convertTo7(int num) {
if (num < 0)
return '-' + convertTo7(-num);
if (num < 7)
return num + "";
return convertTo7(num / 7) + num % 7;
}