LeetCode第168题—Excel表列名称—Python实现

Posted StriveZs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode第168题—Excel表列名称—Python实现相关的知识,希望对你有一定的参考价值。


title: LeetCode No.168

categories:

  • OJ
  • LeetCode

tags:

  • Programing
  • LeetCode
  • OJ

LeetCode第168题

题目描述

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

例如:

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

示例 1:

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

示例 2:

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

示例 3:

输入:columnNumber = 701
输出:"ZY"

示例 4:

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

提示:

1 <= columnNumber <= 231 - 1

代码

#
# @lc app=leetcode.cn id=168 lang=python
#
# [168] Excel表列名称
#

# @lc code=start
class Solution(object):
    def convertToTitle(self, columnNumber):
        """
        思路:这是26进制计算法
        对columnNumber进行取余,余数查表就是结果
        :type columnNumber: int
        :rtype: str
        """
        num2chara = 
            1: 'A',
            2: 'B',
            3: 'C',
            4: 'D',
            5: 'E',
            6: 'F',
            7: 'G',
            8: 'H',
            9: 'I',
            10: 'J',
            11: 'K',
            12: 'L',
            13: 'M',
            14: 'N',
            15: 'O',
            16: 'P',
            17: 'Q',
            18: 'R',
            19: 'S',
            20: 'T',
            21: 'U',
            22: 'V',
            23: 'W',
            24: 'X',
            25: 'Y',
            26: 'Z'
            
        res = ''
        while columnNumber > 26:
            remainder = columnNumber % 26
            if remainder == 0:
                res = num2chara[26] + res
                columnNumber = (columnNumber - 26) / 26
            else:
                res = num2chara[remainder] + res
                columnNumber = (columnNumber - remainder) / 26
        if columnNumber != 0:
            res = num2chara[columnNumber] + res
        return res

# s = Solution()
# print(s.convertToTitle(columnNumber = 701))

# @lc code=end


以上是关于LeetCode第168题—Excel表列名称—Python实现的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode第168题—Excel表列名称—Python实现

LeetCode做题笔记第168题:Excel表列名称

LeetCode做题笔记第168题:Excel表列名称

LeetCode 815. 公交路线 / 909. 蛇梯棋(还是bfs)/ 168. Excel表列名称 / 171. Excel表列序号

leetcode 168. Excel表列名称

LeetCode--168--Excel表列名称