题目的链接在这里:https://leetcode-cn.com/problems/excel-sheet-column-title/
题目大意
给定一个正整数,返回它在 Excel 表中相对应的列名称。
例如,
1 -> A
2 -> B
3 -> C
...
26 -> Z
27 -> AA
28 -> AB
...
一、示意图
二、解题思路
直接变成了 1-26对应"A"到”Z"
进位
代码如下:
class Solution {
public String convertToTitle(int columnNumber) {
//直接变成了 1-26对应"A"到”Z"
String result="";
//直接设置一个数组
char sum[]={'a','A','B','D','D'};
while (columnNumber>=1){
int temp=columnNumber%26;
//这里就有一个位置 假设是27的话 就是余1 应该是对应1字符级里面 A是对应的65
//经过测试 可以的
//还有一种是 如果取余之后 是本身的话 就
char temp_String;
if(temp==0){
//表示那个结果就是26了
temp_String = 'Z';
columnNumber--;
}
else {
temp_String = (char) ('A' - 1 + temp);
}
result+=temp_String;
columnNumber/=26;
}
//这里就使用StringBuffer进行反转
StringBuilder sb=new StringBuilder(result);
return sb.reverse().toString();
}
}