温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何解决给定Excel表格中的列名称并返回其相应列序号的问题

发布时间:2022-01-05 14:46:34 来源:亿速云 阅读:172 作者:小新 栏目:大数据

这篇文章给大家分享的是有关如何解决给定Excel表格中的列名称并返回其相应列序号的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。


 

题目描述

给定一个Excel表格中的列名称,返回其相应的列序号。

例如,

    A -> 1    B -> 2    C -> 3    ...    Z -> 26    AA -> 27    AB -> 28     ...
 

示例 1:

输入: "A"输出: 1
 

示例 2:

输入: "AB"输出: 28
 

示例 3:

输入: "ZY"输出: 701
 
 

解题方案

 

思路

  • 标签:字符串遍历,进制转换

  • 初始化结果ans = 0,遍历时将每个字母与A做减法,因为A表示1,所以减法后需要每个数加1,计算其代表的数值num = 字母 - ‘A’ + 1

  • 因为有26个字母,所以相当于26进制,每26个数则向前进一位

  • 所以每遍历一位则ans = ans * 26 + num

  • 以ZY为例,Z的值为26,Y的值为25,则结果为26 * 26 + 25=701

  • 时间复杂度:O(n)

 

代码

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

画解

如何解决给定Excel表格中的列名称并返回其相应列序号的问题如何解决给定Excel表格中的列名称并返回其相应列序号的问题如何解决给定Excel表格中的列名称并返回其相应列序号的问题

感谢各位的阅读!关于“如何解决给定Excel表格中的列名称并返回其相应列序号的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI