LeetCode 171. Excel表列序号(python)

题目链接

题目描述:

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

例如,

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

示例 1:

输入: “A”
输出: 1
示例 2:

输入: “AB”
输出: 28
示例 3:

输入: “ZY”
输出: 701

解题思路:
看成26进制即可,例如在十进制中521可以表示为:521=510**2+2101+1*100
再将字母转换为数字的时候要将索引加1.

class Solution(object):
    def titleToNumber(self, s):
        """
        :type s: str
        :rtype: int

        """
        s=s[::-1]
        num=0
        alp='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        for i in range(len(s)):
            j=alp.index(s[i])+1
            num+=j*26**i 
        return num

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44740082/article/details/91411529