Skip to content

0171. Excel Sheet Column Number

难度: Easy

刷题内容

原题连接

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

内容描述

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

例如,

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

示例 1:

 输入: "A"
 输出: 1

示例 2:

 输入: "AB"
 输出: 28

示例 3:

 输入: "ZY"
 输出: 701

解题方案

思路 1 **- 时间复杂度: O(N)*- 空间复杂度: O(1)***

利用parseInt可以按照进制来解析的特性,可以将英文字母轻松转换成数字

代码:

/**
 * @param {string} s
 * @return {number}
 */
var titleToNumber = function(s) {
    if (!s) {
        return 0
    }
    let list = s.split('')
    list = list.map((alpha, index) => (parseInt(alpha, 36) - 9) * Math.pow(26, list.length - index - 1))
    return list.reduce((acc, cur) => (acc + cur), 0)
}

我们一直在努力

apachecn/AiLearning

【布客】中文翻译组