算法:Excel表列序號(LeetCode)

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

例如,

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

示例 1:

输入: "A" 输出: 1

示例 2:

输入: "AB" 输出: 28

示例 3:

输入: "ZY" 输出: 701

解题思路:找到规律,类似26进制数字。

Golang:

<code>func titleToNumber(s string) int {
    sum:=0
    for i:=0;i/<code>

执行用时:4 ms

python:

<code>class Solution(object):
    def titleToNumber(self, s):
        """
        :type s: str
        :rtype: int
        """
        sum=0
        a=ord('A')-1
        for c in s:
            sum=sum*26
            sum+=ord(c)-a
        return sum/<code>

执行用时:28 ms


算法:Excel表列序号(LeetCode)


分享到:


相關文章: