力扣(LeetCode)Excel表列名称 个人题解

给定一个正整数,返回它在 Excel 表中相对应的列名称。

例如,

    1 -> A
    2 -> B
    3 -> C
    ...
    26 -> Z
    27 -> AA
    28 -> AB 
    ...

示例 1:

输入: 1
输出: "A"

示例 2:

输入: 28
输出: "AB"

示例 3:

输入: 701
输出: "ZY"


这道题本质上是个26进制的问题。不过要主要操作数前要对数减去1,因为这里‘A’是代表的1,没看评论区前一直卡在这。

代码如下:

class Solution {
    public String convertToTitle(int n) {
        String ans="";
        while(n!=0)
        {
            n--;
            int tmp=n%26;
            ans=(char)('A'+tmp)+ans;
            n/=26;
        }
        return ans;
    }
}

 

posted @ 2019-02-25 21:42  AXiangCoding  阅读(190)  评论(0编辑  收藏  举报