171. Excel表列序号

给定一个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;
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,211评论 6 13
  • 给定一个正整数,返回它在 Excel 表中相对应的列名称。 例如,1 -> A2 -> B3 -> C...26 ...
    3ni阅读 1,228评论 0 1
  • 快乐是属于成年人的词儿。你不必问一个孩子他是否快乐,你能看得出来。成年人谈论快乐,是因为他们大多都不快乐。----...
    中二少女裸辞纪实阅读 250评论 0 0
  • 开营时候,仅仅是画了一个思维导图。现在课程已经进行三分之二了,我要把它整理出来,是自己走过的一个痕迹。
    未来讲师阿真阅读 203评论 0 0
  • 关于冬天的寒冷一概不提。我要描述的,是冬日冰天雪地下的狂欢、舞蹈、吵闹以及会心的欢笑。一个季节把所有的精华洒落人间...
    王一些阅读 227评论 0 1