[leetcode]Excel表列序号[javascript]

https://leetcode-cn.com/problems/excel-sheet-column-number/

描述

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

例如,

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

示例 1:

输入: "AB"
输出: 28

示例 2:

输入: "ZY"
输出: 701

分析

和之前那道题相反,这个是26进制转10进制。
只需要将每一位的字母代表的数字乘以26的位数减一次方,再相加即可

var titleToNumber = function(s) {
  const arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
  let len = s.length, sum = 0
  for (let i = 0; i < len; i++) {
    sum = (arr.indexOf(s[i]) + 1) * Math.pow(26, len - 1 - i) + sum
  }
  return sum
};

相关链接

[leetcode]Excel表列名称[javascript]

猜你喜欢

转载自blog.csdn.net/u010690493/article/details/85213287
今日推荐