求star

开源不易,喜欢请点个star吧

Ocean Han
182 字
1 分钟
Leetcode->Excel表列名称
2022-06-18

题目:tada:#

给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。

例如:

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

示例 1:

输入:columnNumber = 1
输出:"A"

示例 2:

输入:columnNumber = 28
输出:"AB"

示例 3:

输入:columnNumber = 2147483647
输出:"FXSHRXW"

提示:

  • 1 <= columnNumber <= 231 - 1

解题#

①看作26进制#

TIP

​ 和正常 0~25 的 26 进制相比,本质上就是每一位多加了 1。所以只要先减1,然后按照26进制计算就好,相当于A=>0, B=>1

/**
 * @param {number} columnNumber
 * @return {string}
 */
var convertToTitle = function (columnNumber) {
    let res = []
    while(columnNumber > 0){
        --columnNumber
        let n = columnNumber % 26
        res.push(String.fromCharCode(65 + n))
        columnNumber = Math.floor(columnNumber/ 26)
    }
    return res.reverse().join('')
};
Leetcode->Excel表列名称
https://blog.oceanh.top/posts/algorithm/excel表列名称/
作者
Ocean Han
发布于
2022-06-18
许可协议
CC BY-NC-SA 4.0
最后修改时间
2024-08-10 10:08:49