问题:
难度:easy
网址链接:https://leetcode.com/problems/excel-sheet-column-number/
说明:
水题,其实就一26进制,A 相当于 1, Z 相当于 26,AA 相当于27这样理解。
输入案例:
Example 1:
Input: "A"
Output: 1
Example 2:
Input: "AB"
Output: 28
Example 3:
Input: "ZY"
Output: 701
我的代码:
26进制,可以把每一个字母都弄出来,然后通过26相乘就行,'@' 这个字符刚好是 'A' 的前一个。
class Solution {
public int titleToNumber(String s) {
int len = s.length(), n = len - 1, total = 0;
for(char ch : s.toCharArray())
total += (ch - '@') * (int)Math.pow(26, n --); // 从尾到头开始相乘
return total;
}
}