168.EXCEL表列名称
给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。
例如:
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
...
示例 1:
输入:columnNumber = 1
输出:"A"
示例 2:
输入:columnNumber = 28
输出:"AB"
示例 3:
输入:columnNumber = 701
输出:"ZY"
示例 4:
输入:columnNumber = 2147483647
输出:"FXSHRXW"
思路:该题肯定是通过循环求取每一位的字母,一轮一共有26个字母,则需要利用整数对26求余数来得到最后一位字母,然后再将整数除以26得到下一轮的整数。
class Solution {
public String convertToTitle(int columnNumber) {
StringBuilder ans = new StringBuilder();
//循环求解每一位字母
while(columnNumber>0){
//因为该题是从1开始,将整体左移一位
columnNumber--;
//利用char强制转换求出字母
char ch=(char)(columnNumber%26+'A');
//将其添加到ans中
ans.append(ch);
//求解下一个字母
columnNumber=columnNumber/26;
}
//反转加转成字符串输出
return ans.reverse().toString();
}
}