171. Excel Sheet Column Number


 

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

For example:

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

给定一个字母或者字符串转化为对应的整数,这不就是26进制么?知道这一点就好办了
例如给定一个整数123=3 + 2*10^1 + 1*10^2
      public int titleToNumber(String s) {
        int result = 0;
        for(int i  = s.length() - 1; i>=0;i--)
        {
            result = result + (s.charAt(i) - 'A' + 1)*(int)Math.pow(26, s.length() -1 -i);
        }
        return result;
    }

转换下思路,给定一个整数 123

0 + 1 * 10^0 = 1

1 * 10 ^1 + 2 = 12

12 * 10^1 + 3 = 123

    public int titleToNumber(String s) {
        int result = 0;
        for (int i = 0; i < s.length(); i++) {
            result = result * 26 + (int)(s.charAt(i) - 'A' + 1);
        }
        return result;
    }

 

posted on 2017-09-27 09:28  Wanna_Go  阅读(157)  评论(0编辑  收藏  举报

导航