目录

171.-Excel-表列序号

171. Excel 表列序号

题目描述

给你一个字符串 columnTitle ,表示 Excel 表格中的列名称。返回 该列名称对应的列序号 。

例如:

A -> 1

B -> 2

C -> 3

Z -> 26

AA -> 27

AB -> 28

示例 1:

输入: columnTitle = “A”

输出: 1

示例 2:

输入: columnTitle = “AB”

输出: 28

示例 3:

输入: columnTitle = “ZY”

输出: 701

提示:

1 <= columnTitle.length <= 7

columnTitle 仅由大写英文组成

columnTitle 在范围 [“A”, “FXSHRXW”] 内

尝试做法

class Solution {
    public int titleToNumber(String columnTitle) {
        int ans = 0;
        for(int i = 0; i < columnTitle.length(); ++i){
            ans += columnTitle.charAt(i) - 'A' + 1;
            if(i+1 < columnTitle.length()) ans *= 26;
        }
        return ans;
    }
}

没啥可说的

推荐做法

class Solution {
    public int titleToNumber(String columnTitle) {
        int number = 0;
        int multiple = 1;
        for (int i = columnTitle.length() - 1; i >= 0; i--) {
            int k = columnTitle.charAt(i) - 'A' + 1;
            number += k * multiple;
            multiple *= 26;
        }
        return number;
    }
}

作者力扣官方题解
链接https://leetcode.cn/problems/excel-sheet-column-number/solutions/849149/excelbiao-lie-xu-hao-by-leetcode-solutio-r29l/
来源力扣LeetCode
著作权归作者所有商业转载请联系作者获得授权非商业转载请注明出处

也可以从后往前遍历