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; }