LeetCode2题:两数相加(python3)

代码思路:如果值大于10,那么就进位到下一个位置l1.next,然后再让l1+l2更新l2的值

python 复制代码
class Solution:
    def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode],carry=0) -> Optional[ListNode]:
        if not l1:
            return l2
        if not l2:
            return l1
        
        l1.val += l2.val
        if l1.val >= 10:
            l1.next = self.addTwoNumbers(ListNode(l1.val // 10), l1.next)
            l1.val %= 10
        l1.next = self.addTwoNumbers(l1.next, l2.next)
        return l1
                
相关推荐
Js.Tx31 分钟前
【具体数学 Concrete Mathematics】2.1.5 一般性的方法
算法·具体数学
起个名字费劲死了39 分钟前
Halcon学习一:骰子识别
前端·python·学习
eric-sjq1 小时前
小思框架 · 30M 级长上下文新架构对比技术报告
人工智能·python·深度学习·语言模型
秋天的怀念_David2 小时前
算法一千零一夜 · 作品相关:版权与致谢声明
程序人生·算法·学习方法
揽星河..2 小时前
【C语言】数组
c语言·开发语言·算法
careathers2 小时前
【数据结构】基于比较的排序算法 - 选择排序
数据结构·算法·排序算法
听风若依3 小时前
C++模板初阶
c++·算法
reasonsummer3 小时前
【办公类-04-05】20261030整理手机照片(华为手机助手导出照片到日期文件夹+批量添加四级文件夹+手动转移照片更名+更改三级文件夹合并汉字名称)
python·智能手机
纪念 2293 小时前
C++ 算法(模拟)
开发语言·c++·算法
揽星河..3 小时前
【C语言】函数
c语言·算法