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”
提示:
1 <= columnNumber <= 231 - 1
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/excel-sheet-column-title
解决方案:
提供思路
这是个排序问题,或者说数数问题。首先了解excel的排序,先是首字母,然后是双字母,然后三字母;
A;B;C;D……
AA;AB;AC……
BA;BB;BC……
AAA;AAB;AAC……
ABA;ABB;ABC……
……
上代码:
public class Solution {
public string ConvertToTitle(int columnNumber) {
StringBuilder sb = new StringBuilder();
while (columnNumber != 0) {
columnNumber--;
sb.Append((char)(columnNumber % 26 + 'A'));
columnNumber /= 26;
}
StringBuilder columnTitle = new StringBuilder();
for (int i = sb.Length - 1; i >= 0; i--) {
columnTitle.Append(sb[i]);
}
return columnTitle.ToString();
}
}
以上是碰到的第一百六十八题,后续持续更新。感觉对你有帮助的小伙伴可以帮忙点个赞噢!