关于LeetCode中Excel Sheet Column Number一题的理解

原创 2016年08月29日 18:16:40

题目如下:

Given a column title as appear in an Excel sheet, return its corresponding column number.

For example:

    A -> 1
    B -> 2
    C -> 3
    ...
    Z -> 26
    AA -> 27
    AB -> 28 
    其实就是求一个“26进制”数......

    把一个字符串转化为“10进制”数的方法大家应该完全没问题吧,“26进制”同理,只不过把“10”换成了“26”罢了,照例放上已Accepted的代码:

<span style="font-size:14px;">    public int titleToNumber(String s) {
        double result = 0;
        for (int i=0;i<s.length();i++){
            result += Math.pow(26,s.length()-1-i)*(s.charAt(i)-'A'+1);
        }
        return (int)result;
    }</span>
    这题果然是太简单了,怪不得Accepted率这么高。然后是评论区的方法,如下所示:

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

    第一次看这个方法的时候还是有点懵逼的,因为我菜嘛,那么用类比的方法举一个10进制的12345这个数的例子来说明一下上面评论区的这种方法。

第一次循环:

value=0*10 + 1 = 1

第二次循环:

value = 1*10 +2 = 12

第三次循环:

value = 12*10 + 3 = 123

第四次循环:

value = 123 *10 + 4 = 1234

第五次循环:

value = 1234 * 10 + 5 = 12345

    还是挺明了的,嗯!



相关文章推荐

关于LeetCode中Excel Sheet Column Title一题的理解

题目如下: Given a positive integer, return its corresponding column title as appear in an Excel sheet....

Leetcode 171. Excel Sheet Column Number

Related to question Excel Sheet Column TitleGiven a column title as appear in an Excel sheet, return...

[LeetCode][171][Excel Sheet Column Number]

题目链接:https://leetcode.com/problems/excel-sheet-column-number/ 题目描述: Given a column title a...

LeetCode笔记:171. Excel Sheet Column Number

模仿处理excel中的列

LeetCode Factorial Trailing Zeroes, Excel Sheet Column Number

Factorial Trailing Zeroes 题意:给一个数n,问n!的末尾有几个0 第一反应是0只有2、5相遇能出一个0,所以n有几个5的倍数似乎就是答案了。 (n!有k个5,肯定有k个2,能...

LeetCode之路:171. Excel Sheet Column Number

LeetCode之路:171. Excel Sheet Column Number 一、引言这道题相对来说比较简单,但是背后涉及到的东西确实挺有意思的: 我才知道 Excel 的列的表示是用的类似...

Leetcode_171_Excel Sheet Column Number

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42290079 Given a column title ...

<LeetCode OJ> 171 / 168 Excel Sheet Column Number & Title

171. Excel Sheet Column Number My Submissions Question Total Accepted: 58671 Total Submissions: ...

LeetCodeOJ_171_Excel Sheet Column Number

Given a column title as appear in an Excel sheet, return its corresponding column number.

171. Excel Sheet Column Number\172. Factorial Trailing Zeroes\134. Gas Station\135. Candy

Excel Sheet Column Number 题目描述 代码实现 Factorial Trailing Zeroes 题目描述 代码实现 Gas Station 题目描述 代码实现 Candy ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于LeetCode中Excel Sheet Column Number一题的理解
举报原因:
原因补充:

(最多只允许输入30个字)