当前位置: 首页 > article >正文

leetcode-top100链表专题二

21.合并两个有序链表

题目链接

21. 合并两个有序链表 - 力扣(LeetCode)

解题代码

class Solution:
    def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:
        if not l1: return l2  # 终止条件,直到两个链表都空
        if not l2: return l1
        if l1.val <= l2.val:  # 递归调用
            l1.next = self.mergeTwoLists(l1.next,l2)
            return l1
        else:
            l2.next = self.mergeTwoLists(l1,l2.next)
            return l2

2.两数相加

题目链接

2. 两数相加 - 力扣(LeetCode)

解题思路

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def addTwoNumbers(self, l1: Optional[ListNode], l2: Optional[ListNode]) -> 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


http://www.kler.cn/a/229798.html

相关文章:

  • UE播放声音
  • 如何评价deepseek-V3 VS OpenAI o1 自然语言处理成Sql的能力
  • 人工智能-数据分析及特征提取思路
  • AI的主流数据库介绍及其功能对比
  • PostgreSQL 18新特性之uuidv7函数
  • YARN WebUI 服务
  • Django通过Json配置文件分配多个定时任务
  • 比较两次从接口获取的数据,并找出变动的字段
  • 071:vue中过滤器filters的使用方法(图文示例)
  • Z函数的原理和应用:以Python为例
  • 微信自动预约小程序开发指南:从小白到专家
  • HiSilicon352 android9.0 开机视频调试分析
  • Micro micro controller一览
  • window 安装 jenkins 编写脚本
  • Linux 网络:PTP 简介
  • 5-3、S曲线生成器【51单片机+L298N步进电机系列教程】
  • 解决:VSCode 连接服务器时出错:Could not establish connection to : XHR failed
  • Vivado-IP核
  • 挑战杯 python+opencv+机器学习车牌识别
  • Maven:设定项目编码
  • 全链游戏的未来趋势与Bridge Champ的创新之路
  • python进行批量搜索匹配替换文本文字的matlab操作实例
  • 【Mysql】事务的隔离级别与 MVCC
  • 【Qt学习笔记】(三)常用控件(持续更新)
  • 基于单片机的智能寻光小车设计
  • hbuiderX打包为apk后无法停止录音的解决方案