进制转换
短除法:
由于一个数可以表示成
\[x = a_n * k^{n-1} + a_{n-1} * k^{n-2} + \cdots + a_1 * k^0
\]
所以, x % k 取出末尾的
\[a_1 * k^0
\]
此时让 x / k ,得到a1,让所有项的次数减一,得
\[x = a_n * k^{n-2} + a_{n-1} * k^{n-3} + \cdots + a_2 * k^0
\]
此时继续取模就可以得到a2,重复之前的流程直到x = 0
// 进制数没有写成英文字母(用十进制数表示,并用空格分割)
public String conversionBase(long n, long base) {
String symbol = "";
if (n < 0) {
symbol = "-";
n = -n;
}
String res = "";
while (n != 0) {
long mod = n % base;
res = mod + " " + res;
n /= base;
}
return symbol + res;
}