leetcode--171--Excel表列序号

2020-03-27  本文已影响0人  minningl

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

例如,

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

示例 1:

输入: "A"
输出: 1

示例 2:

输入: "AB"
输出: 28

示例 3:

输入: "ZY"
输出: 701

链接:https://leetcode-cn.com/problems/excel-sheet-column-number

思路:
1、这道题是将26进制的数转换为10进制的数

Python代码:

class Solution(object):
    def titleToNumber(self, s):
        """
        :type s: str
        :rtype: int
        """
        ret = 0
        for item in s:
            temp = ord(item)-64
            ret = ret*26+temp
        return ret

C++代码:

class Solution {
public:
    int titleToNumber(string s) {
        int ret=0;
        for (char item:s){
            int temp = item-64;  // A的ascii码是65
            ret = 26*ret+temp;
        }
        return ret;
    }
};
上一篇下一篇

猜你喜欢

热点阅读