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
相关推荐
嘴贱欠吻!5 小时前
Flutter鸿蒙开发指南(七):轮播图搜索框和导航栏
算法·flutter·图搜索算法
张祥6422889045 小时前
误差理论与测量平差基础笔记十
笔记·算法·机器学习
踩坑记录5 小时前
leetcode hot100 2.两数相加 链表 medium
leetcode·链表
qq_192779875 小时前
C++模块化编程指南
开发语言·c++·算法
cici158747 小时前
大规模MIMO系统中Alamouti预编码的QPSK复用性能MATLAB仿真
算法·matlab·预编码算法
历程里程碑7 小时前
滑动窗口---- 无重复字符的最长子串
java·数据结构·c++·python·算法·leetcode·django
2501_940315269 小时前
航电oj:首字母变大写
开发语言·c++·算法
CodeByV9 小时前
【算法题】多源BFS
算法
TracyCoder1239 小时前
LeetCode Hot100(18/100)——160. 相交链表
算法·leetcode
浒畔居9 小时前
泛型编程与STL设计思想
开发语言·c++·算法