力扣:171. Excel 表列序号(Python3)

题目:

给你一个字符串 columnTitle ,表示 Excel 表格中的列名称。返回 该列名称对应的列序号

例如:

复制代码
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28 
...

来源:力扣(LeetCode)

链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

示例:

示例 1:

输入:columnTitle = "A"

输出:1

示例 2:

输入:columnTitle = "AB"

输出:28

示例 3:

输入:columnTitle = "ZY"

输出:701

解法:

从右往左遍历标题字母,A~Z分别对应1~26,遍历次数从0开始,把字母对应数字 * 26的x次方加到结果中,x对应遍历次数。

代码:

python 复制代码
class Solution:
    def titleToNumber(self, columnTitle: str) -> int:
        dic = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'E': 5, 'F': 6, 'G': 7, 'H': 8, 'I': 9, 'J': 10, 'K': 11, 'L': 12, 'M': 13, 'N': 14, 'O': 15, 'P': 16, 'Q': 17, 'R': 18, 'S': 19, 'T': 20, 'U': 21, 'V': 22, 'W': 23, 'X': 24, 'Y': 25, 'Z': 26}
        result = 0
        for exp, c in enumerate(columnTitle[::-1]):
            result += dic[c] * pow(26, exp)
        return result
相关推荐
zjy277772 分钟前
Golang bcrypt如何加密密码_Golang密码加密教程【收藏】
jvm·数据库·python
老纪16 分钟前
Redis怎样利用Lua为多个Key同步续期
jvm·数据库·python
2403_8832610919 分钟前
C#怎么计算两个日期的差值_C#如何处理时间跨度【笔记】
jvm·数据库·python
m0_7406532220 分钟前
Golang切片底层原理是怎样的_Golang切片实现原理教程【简明】
jvm·数据库·python
yexuhgu22 分钟前
CSS如何处理CSS逻辑属性兼容性_通过PostCSS转译为物理属性
jvm·数据库·python
m0_6245785923 分钟前
CSS如何给Bootstrap背景添加半透明层_使用rgba颜色模式与定位
jvm·数据库·python
m0_4708576425 分钟前
CSS如何实现等宽表格布局_利用table-layout与盒模型
jvm·数据库·python
kexnjdcncnxjs30 分钟前
HTML 中使用 EXIF.js 读取图片元数据失败的常见原因与解决方案
jvm·数据库·python
iuvtsrt37 分钟前
Python如何实现定时异步任务_结合asyncio与loop.call_later调用
jvm·数据库·python
m0_4636722037 分钟前
HTML怎么标注成就连续打卡中断_HTML“断连,重新开始”提示【方法】
jvm·数据库·python