给定一个Excel表格中的列名称,返回其相应的列序号。
例如,
A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ...
示例 1:
输入: "A" 输出: 1
示例 2:
输入: "AB" 输出: 28
示例 3:
输入: "ZY" 输出: 701
思路:相当于26进制转化成10进制,参考2进制转10进制。
class Solution {
public int titleToNumber(String s) {
if(s==null||s.length()==0) {
return 0;
}
int value=0,sum=0,len;
len=s.length();
int b=1;
for(int i=len-1;i>=0;i--) {
value=b*(s.charAt(i)-'A'+1);
sum+=value;
b=b*26;
}
return sum;
}
}