给你一个字符串 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"]
内public class Solution { //10进制成26 public static int titleToNumber(String columnTitle) { //定义字母数组 char[] arr=new char[]{'A','B','C','D','E','F','G','H', 'I','J','K','L','M','N','O','P', 'Q','R','S','T','U','V','W','X', 'Y','Z'}; char[] arr2=columnTitle.toCharArray();//待处理字符串 double sum=0;//结果 int arrLen= arr2.length;//字符个数 double cimi=0;//次密 while (arrLen>0) { for (int i=0;i<26;i++) { if(arr[i]==arr2[arrLen-1]) { sum=sum+(i+1)*Math.pow(26,cimi); //x*26^n+...+x*26^0 cimi++; break; } } arrLen--; } return (int) sum; } public static void main(String[] args) { System.out.println(titleToNumber("FXSHRXW")); } }