这篇文章给大家分享的是有关如何解决给定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表格中的列名称并返回其相应列序号的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。