0%

leetCode-171:Excel Sheet Column Number

问题描述

给定一个 EXCEL 表格的表头,要求换算成对应的数字。A -> 1, B -> 2, C -> 3, ..., Z -> 26, AA -> 27, AB -> 28, ...。题目链接:点我

样例输入输出

输入:A

输出:1

输入:ZY

输出:701

问题解法

此题与 LeetCode-168 是一种类似26进制的相互转换关系,直接按进制转换的方式进行求解即可。代码如下

1
2
3
4
5
6
7
8
9
10
11
12
class Solution {
public int titleToNumber(String columnTitle) {
int num = 0;
int factor = 1;
for (int i = columnTitle.length() - 1; i >= 0; i--) {
num += ((columnTitle.charAt(i) - 'A') + 1) * factor;
factor = factor * 26;
}

return num;
}
}