1
2
3
4
5
6
7
8
9
10
public String convertToTitle(int n) {
StringBuilder sb = new StringBuilder();
while (n > 0) {
--n; // A -> 0
sb.append((char)('A' + n % 26));
n /= 26;
}
sb.reverse();
return sb.toString();
}
  1. 辗转相除法,得到的结果都是从个位到高位,所以结果要reverse;
  2. 有不少十进制的辗转得到这种类似的题