Leetcode: 171. Excel表列序号
题目描述
给定一个Excel表格中的列名称,返回其相应的列序号。
例如,
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
...
示例 1:
输入: "A"
输出: 1
示例 2:
输入: "AB"
输出: 28
示例 3:
输入: "ZY"
输出: 701
思路
思路1
直接使用26进制思路遍历字符串即可
代码
代码1
class Solution {
public int titleToNumber(String s) {
if (s == null || s.length() == 0){
return 0;
}
int result = 0;
for(int i = 0; i < s.length(); i++){
result = result * 26 + s.charAt(i) - 'A' + 1;
}
return result;
}
}
复杂度分析
思路1时间复杂度
$O(n)$
思路1空间复杂度
$O(1)$