1, 题目

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

例如,

  1. A -> 1
  2. B -> 2
  3. C -> 3
  4. ...
  5. Z -> 26
  6. AA -> 27
  7. AB -> 28
  8. ...

示例 1:

  1. 输入: "A"
  2. 输出: 1

示例 2:

  1. 输入: "AB"
  2. 输出: 28

示例 3:

  1. 输入: "ZY"
  2. 输出: 701

致谢:
特别感谢 @ts 添加此问题并创建所有测试用例。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/excel-sheet-column-number
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2, 算法

  1. object Solution {
  2. def titleToNumber(s: String): Int = {
  3. var sum = 0
  4. for (x <- s) {
  5. sum = sum * 26 + x - 'A' + 1
  6. }
  7. sum
  8. }
  9. }
  1. class Solution:
  2. def titleToNumber(self, s: str) -> int:
  3. sum = 0
  4. for x in s:
  5. sum = sum * 26 + ord(x) - ord('A') + 1
  6. return sum