给你一个字符串 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 result =0;
for(int i=0;i<columnTitle.length();i++){
char v=columnTitle.charAt(i);
result=result*26+(v-'A'+1);
}
return result ;
}
}
讲述看到这一题的思路
首先,初始化一个变量 result 为 0,用于存储最终的列序号。
遍历给定的字符串 columnTitle 中的每个字符:
将当前字符转换为对应的数字,可以通过减去 'A' 的 ASCII 值再加 1 来实现。 将 result 乘以 26,表示进制转换的作用。
将上一步得到的数字加到 result 中。
循环结束后,返回最终的结果 result。