LeetCode

171. Excel表列序号

2018-11-20  本文已影响14人  闭门造折

给定一个Excel表格中的列名称,返回其相应的列序号。

例如

 A -> 1
 B -> 2
 C -> 3
 ...
 Z -> 26
 AA -> 27
 AB -> 28 
 ...

示例 1:

输入: "A"
输出: 1

示例 2:

输入: "AB"
输出: 28

示例 3:

输入: "ZY"
输出: 701

思路

26进制,逐位的转换成10进制即可

性能分析

没啥可分析的

具体代码

int titleToNumber(string s) {
    int res = 0;    // 结果
    for(int i = 0; i < s.size(); i++){ // 遍历整个26进制数
        res *= 26;  // 倍增
        res += s[i] - 'A' + 1; // 增加个位
    }
    return res;
}
上一篇下一篇

猜你喜欢

热点阅读