Leetcode刷题python----Excel表列序号

Excel表列序号

题目


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

例如,

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

示例 1:

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

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

输入: “ZY”
输出: 701

解题


思路:26进制

代码:

class Solution:
    def titleToNumber(self, s):
        """
        :type s: str
        :rtype: int
        """
        a={}
        ap_list='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        for i in range(1,len(ap_list)+1):
            a[ap_list[i-1]]=i
        num=len(s)
        sum_s=0
        for i in range(num):
            sum_s+=(a[s[i]]*(26**(num-i-1)))
        return sum_s

你可能感兴趣的:(Leetcode刷题python----Excel表列序号)