版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/majichen95/article/details/83176256
给定一个正整数,返回相应的列标题,如Excel表中所示。
样例
1 -> A
2 -> B
3 -> C
...
26 -> Z
27 -> AA
28 -> AB
解题思路:
是1348. Excel Sheet Column Number的变形,本质仍然是一个进制转换问题,但是需要注意map中对应的是0-25, 而实际中是1-26,这中间的转换需搞明白。
public class Solution {
/**
* @param n: a integer
* @return: return a string
*/
public String convertToTitle(int n) {
// write your code here
HashMap<Integer, Character> map = new HashMap<>();
for(int i=0; i<26; i++)
map.put(i, (char)('A'+i));
StringBuilder str = new StringBuilder();
while(n != 0){
str.insert(0,map.get((n-1)%26));
n = (n-1)/26;
}
return str.toString();
}
}