leetcode python3 简单题171. Excel Sheet Column Number

1.编辑器

我使用的是win10+vscode+leetcode+python3
环境配置参见我的博客:
链接

2.第一百七十一题

(1)题目
英文:
Given a column title as appear in an Excel sheet, return its corresponding column number.

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/excel-sheet-column-number

(2)解法
就是一个26进制转十进制的算法,使用了ord方法来返回字符对应的ASCII码值。
(耗时:48ms,内存:13.8M)

class Solution:
    def titleToNumber(self, s: str) -> int:
        return sum( [(ord(s[i])-64) * 26 ** (len(s)-1-i) for i in range(len(s))]) 

注意:
1.这里减去64的原因是,字符A对应的ASCII码值是65,这样实际的码值就是65-64=1,这样就与题设的对应关系匹配上了。
2.(len(s)-1-i)因为是从左到右进行计算的。

猜你喜欢

转载自blog.csdn.net/qq_37285386/article/details/105938134