LeetCode | 171.Excel表列序号

这道题涉及到字符串和进制转换,首先我们先创建一个A-Z到1-26的map映射,方便我们后续遍历字符串转换,然后对字符串从后往前遍历,依次加上对应权重,注意越往前的权重越大,要记得对应乘上26的对应方数

python 复制代码
class Solution(object):
    def titleToNumber(self, columnTitle):
        """
        :type columnTitle: str
        :rtype: int
        """
        ans = 0
        base = 1
        index = len(columnTitle) - 1
        # 使用字典推导式创建映射字典
        mapping = {chr(i): i - 64 for i in range(65, 91)}
        while index >= 0:
            ans += mapping[columnTitle[index]] * base
            base *= 26
            index -= 1
        return ans
相关推荐
m0_7369191033 分钟前
C++中的享元模式变体
开发语言·c++·算法
罗湖老棍子40 分钟前
【 例 1】石子合并(信息学奥赛一本通- P1569)
数据结构·算法·区间dp·区间动态规划·分割合并
wangluoqi1 小时前
26.2.4练习总结
算法
流㶡1 小时前
逻辑回归实战:从原理到不平衡数据优化(含欠拟合/过拟合诊断与召回率提升)
算法·机器学习·逻辑回归
Tisfy1 小时前
LeetCode 3637.三段式数组 I:一次遍历(三种实现)
算法·leetcode·题解·模拟·数组·遍历·moines
遨游xyz1 小时前
数据结构-哈希表
算法·哈希算法
dyyx1112 小时前
C++中的过滤器模式
开发语言·c++·算法
lrh1228002 小时前
详解决策树算法:分类任务核心原理、形成流程与剪枝优化
算法·决策树·机器学习
期末考复习中,蓝桥杯都没时间学了2 小时前
力扣刷题15
算法·leetcode·职场和发展
2301_817497332 小时前
C++中的装饰器模式高级应用
开发语言·c++·算法