171. Excel Sheet Column Number

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的次方数。

/**
 * @param {string} s
 * @return {number}
 */
var titleToNumber = function(s) {
    var num = s.length;
    var result = 0;
    for (var i = 0 ; i<num ;i++) {
        result += (s[i].charCodeAt(0)-64)*Math.pow(26,num-1-i);
    }
    return result;
};

还有个不用乘方的办法:

/**
 * @param {string} s
 * @return {number}
 */
var titleToNumber = function(s) {
    var num = s.length;
    var result = 0;
    for (var i = 0 ; i<num ;i++) {
          result = result * 26 + (s.charCodeAt(i) - 64);
    }
    return result;
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容