首页 > 其他 > 详细

leetcode 168.Excel Sheet Column Title

时间:2015-03-02 18:32:30      阅读:268      评论:0      收藏:0      [点我收藏+]

题目:

Given a positive integer, return its corresponding column title as appear in an Excel sheet.

For example:

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

 

解决方案:

public class Solution {
    public String convertToTitle(int n) {
        //char a[26]={‘A‘,‘B}
        String s = "";
        String res = "";
        while(n > 0){
            n--;
            //s = n%26 + s;
            res = (char)(n%26+‘A‘) + res;
            n = n/26;
        }
        
        return res;
    }
}

 

总结:这个题目最初做的时候就立马反应到是26进制与10进制的转换,但是不单单如此,最后还有个小细节,那就是这里的n--; 这里用n--的主要原因是后面要"+‘A‘"这一步,要是不去n--,而是在“+‘A‘”这里用+64,那么结果是不对的,因为会有%26后得0的情况。这样+64得到的是“@”而不是“A”,所以要用n--来解决这个问题。这个地方对应的例子是输入26得到的结果应该是"Z",而用+64得到的是“A@”.

leetcode 168.Excel Sheet Column Title

原文:http://www.cnblogs.com/Pillar/p/4309109.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!