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

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

题目:

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

例如:

A -> 1

B -> 2

C -> 3

...

Z -> 26

AA -> 27

AB -> 28

...

想法:

类似十进制转二进制,这里是1-26,要使用26进制则需要将1-26改为0-25。具体做法将输入的整数除以26得到的余数为个位数上的数值,再次除以26得到十位数上的数值依次类推,最终获得每个位数上的数值,再将这些数值对应的字符连接即为最终结果字符串

复制代码
class Solution:
    def convertToTitle(self, columnNumber: int) -> str:
        result = []
        while columnNumber>0:
            columnNumber -= 1  # 此处为了将数值改为26进制数
            result.append(chr(columnNumber % 26 + ord("A")))  # 获得当前位置上的字符并添加入字符串列表
            columnNumber //= 26  # 获得除数进行下一轮计算
        return "".join(result[::-1])  # 字符串列表中存储的是倒叙的字符

上述方法的

时间复杂度:O(log26 columnNumber)

空间复杂度:O(1)

相关推荐
不如自挂东南吱8 小时前
空间相关性 和 怎么捕捉空间相关性
人工智能·深度学习·算法·机器学习·时序数据库
لا معنى له8 小时前
学习笔记:Restormer: Efficient Transformer for High-Resolution Image Restoration
图像处理·笔记·学习·计算机视觉·transformer
claider8 小时前
Vim User Manual 阅读笔记 Usr_05.txt Set your settings 设置你的设置
笔记·编辑器·vim
洛生&8 小时前
Elevator Rides
算法
2501_933513049 小时前
关于一种计数的讨论、ARC212C Solution
算法
Wu_Dylan9 小时前
智能体系列(二):规划(Planning):从 CoT、ToT 到动态采样与搜索
人工智能·算法
散峰而望9 小时前
【算法竞赛】栈和 stack
开发语言·数据结构·c++·算法·leetcode·github·推荐算法
知乎的哥廷根数学学派9 小时前
基于多尺度注意力机制融合连续小波变换与原型网络的滚动轴承小样本故障诊断方法(Pytorch)
网络·人工智能·pytorch·python·深度学习·算法·机器学习
蚊子码农9 小时前
算法题解记录-208实现Trie前缀树
运维·服务器·算法
2301_800256119 小时前
【人工智能引论期末复习】第3章 搜索求解2 - 对抗搜索
人工智能·算法·深度优先