leetcode-字符串相加

415. 字符串相加

题目中已经说明不能使用库函数直接将输入的字符串转换为整数。这就需要我们自己实现大数加法的逻辑,我们可以从两个字符串的最后一位开始,逐位相加,同时记录进位。如果某一位相加的结果超过10,那么需要向前进位。最后将结果转换为字符串返回

python 复制代码
class Solution:
    def addStrings(self, num1: str, num2: str) -> str:
        res = []
        carry = 0
        p1, p2 = len(num1) - 1, len(num2) - 1
        while p1 >= 0 or p2 >= 0:
            x1 = ord(num1[p1]) - ord('0') if p1 >= 0 else 0
            x2 = ord(num2[p2]) - ord('0') if p2 >= 0 else 0
            tmp = x1 + x2 + carry
            carry = tmp // 10
            res.append(tmp % 10)
            p1 -= 1
            p2 -= 1
        if carry:
            res.append(carry)
        return "".join(str(x) for x in res[::-1])
相关推荐
6Hzlia1 天前
【Hot 100 刷题计划】 LeetCode 739. 每日温度 | C++ 逆序单调栈
c++·算法·leetcode
XWalnut1 天前
LeetCode刷题 day16
数据结构·算法·leetcode·链表·动态规划
memcpy01 天前
LeetCode 2452. 距离字典两次编辑以内的单词【暴力;字典树】中等
算法·leetcode·职场和发展
We་ct1 天前
LeetCode 322. 零钱兑换:动态规划入门实战
前端·算法·leetcode·typescript·动态规划
6Hzlia1 天前
【Hot 100 刷题计划】 LeetCode 394. 字符串解码 | C++ 单栈回压法
c++·算法·leetcode
穿条秋裤到处跑1 天前
每日一道leetcode(2026.04.22):距离字典两次编辑以内的单词
算法·leetcode
水木流年追梦1 天前
CodeTop Top 300 热门题目2-最长回文子串
开发语言·人工智能·python·算法·leetcode
_深海凉_1 天前
LeetCode热题100-在排序数组中查找元素的第一个和最后一个位置
算法·leetcode·职场和发展
北顾笙9801 天前
day28-数据结构力扣
数据结构·算法·leetcode
米粒11 天前
力扣算法刷题 Day 48(单调栈)
算法·leetcode·职场和发展