算法-excel表头位置转成对应数字 26进制转10进制

给你一个字符串 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"));
        }
    }
    
相关推荐
kirito学长-Java2 小时前
Java牙科诊所管理系统web医院病例挂号预约平台springboot/ssm代码编写
java·开发语言·spring boot
JU HE2 小时前
4 前端前置技术(中):node.js环境
java
Evand J3 小时前
课题推荐——基于自适应滤波技术的多传感器融合在无人机组合导航中的应用研究
开发语言·算法·matlab·无人机
计算机-秋大田4 小时前
基于微信小程序的私家车位共享系统设计与实现(LW+源码+讲解)
java·vue.js·spring boot·后端·微信小程序·小程序·课程设计
喜欢猪猪4 小时前
基于 Java 开发的 MongoDB 企业级应用全解析
java·开发语言·mongodb
jackl的科研日常5 小时前
有限单元法的相关概念
算法
web2u5 小时前
如何安全地管理Spring Boot项目中的敏感配置信息
java·spring boot·后端·安全·spring·gitee·github
hb_zhyu5 小时前
Acwing.基础课.排列数字(c++题解)
数据结构·c++·算法
赛博末影猫5 小时前
Spring理论知识(Ⅴ)——Spring Web模块
java·前端·spring
zimoyin5 小时前
使用 Kotlin 将 Vertx 和 Springboot 整合
java·spring boot·kotlin