Leetcode 171题 Excel Sheet Column Number
Given a column title as appear in an Excel sheet, return its corresponding column number.
For example:
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
...
Example 1:
Input: "A"
Output: 1
Example 2:
Input: "AB"
Output: 28
Example 3:
Input: "ZY"
Output: 701
题目大意:类似于excel,读取对应列的值。
A对应1,Z对应26, 但 AA对应27. 所以本质上是26进制转换为10进制的题。但是A是从1开始的,不是从0开始的。
先学一些基础知识,ord()函数。
ord() 以遍历字符的方式,返回参数的ASCII值。
所以又因为:
a-z:97-122
A-Z:65-90
0-9:48-57
直接上代码:
class Solution:
def titleToNumber(self, s: str) -> int:
sum = 0
for i in s:
sum = sum*26 + ord(i)-64 #这里转换10进制。
return sum
看了看其他代码,Python简洁的优势太明了了。
07/05/2020
疫情中的英国,
加油!