您的位置:首页 > 编程语言 > C语言/C++

[C++]LeetCode: 116 Excel Sheet Column Number (excel列坐标转数字)

2015-01-23 09:44 471 查看
题目:

Related to question Excel Sheet Column Title

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

思路:这道题和Excel
Sheet Column Title和是对应的。这道题要求我们将excel中字母转成数字。观察规律,我们只需要将每个字母对应的数字求出来,迭代增加就可以,注意excel表格字母数字对应关系是26进制的。

Attention:

1. 26个英文字母转对应数字。s[i] - 'A' + 1

ans = (s[i] - 'A' + 1) + ans * 26;


复杂度:O(N)

AC Code:

class Solution {
public:
    int titleToNumber(string s) {
        int ans = 0;
        if(s.size() == 0) return ans;
        
        for(int i = 0; i < s.size(); i++)
        {
            ans = (s[i] - 'A' + 1) + ans * 26;
        }
        
        return ans;
    }
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: