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
                
相关推荐
brzhang几秒前
为什么 A2A 和 MCP 缺一不可?
前端·后端·算法
noravinsc7 分钟前
python 使用rabbitmq
python·rabbitmq·ruby
strive-debug9 分钟前
上篇:《排序算法的奇妙世界:如何让数据井然有序?》
数据结构·算法·排序算法
徒步青云14 分钟前
七大排序算法及其优化
算法·排序算法
蔡蓝32 分钟前
jwt的无感刷新
算法·哈希算法
啥都鼓捣的小yao1 小时前
实战5:Python使用循环神经网络生成诗歌
开发语言·人工智能·python·rnn·深度学习
站大爷IP1 小时前
Python中的“空”:对象的判断与比较
python
全栈派森1 小时前
Web认证宇宙漫游指南
python·node.js
用户4093792713681 小时前
函数
python
HelloDam1 小时前
912. 排序数组 超级通俗易懂、全面的快速排序教程(优化重复元素、实例有序问题)
后端·算法·排序算法