参考代码:
public int titleToNumber(String s) {
char[] charArray = s.toCharArray();
int res = 0;
for(int i = 0; i < charArray.length; i++) {
res = res*26 + (charArray[i] - 'A' + 1);
}
return res;
}
根据题目很容易看出来“ZY”=26*26+25=701;
因此解题思路:从最左边的一个字母开始,乘以26后加上当前字母的值,不断进行循环累加,即是所求结果。
例如:“ZZY”=(((0+26)*26)+26)*26)+25=26*26*26+26*26+25