Merge Two Sorted Lists 合并两个有序链表

  • 题目
  • 解法1、
  • 解法2、
  • 出处

题目

解法1、

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = Noneclass Solution:def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:curr = dummy = ListNode(0)while l1 and l2:if l1.val < l2.val:curr.next = l1l1 = l1.nextelse:curr.next = l2l2 = l2.nextcurr = curr.nextcurr.next = l1 or l2return dummy.next
if __name__ == "__main__":l1 = ListNode(1)l1.next = ListNode(2)l1.next.next = ListNode(4)l2 = ListNode(1)l2.next = ListNode(3)l2.next.next = ListNode(4)r = Solution().mergeTwoLists(l1, l2)while r:print(r.val)r = r.next

1、两个变量指向新链表,curr用来更新链表

解法2、

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = Noneclass Solution:def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:if l1 and l2:if l1.val > l2.val: l1, l2 = l2, l1l1.next = self.mergeTwoLists(l1.next, l2)return l1 or l2

出处

1、https://www.bilibili.com/video/av45843264
2、对应题目下Knife丶的题解

文章已搬运至个人博客:https://night-zhang.github.io/

LeetCode in Python-21. Merge Two Sorted Lists 合并两个有序链表相关推荐

  1. 【LeetCode】Merge Two Sorted Lists(合并两个有序链表)

    这道题是LeetCode里的第21道题. 题目描述: 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1-&g ...

  2. [LeetCode] Merge k Sorted Lists 合并k个有序链表

    Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. E ...

  3. 合并k个有序链表 python_[LeetCode] 23. Merge k Sorted Lists 合并k个有序链表

    Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. E ...

  4. LeetCode刷题记录15——21. Merge Two Sorted Lists(easy)

    LeetCode刷题记录15--21. Merge Two Sorted Lists(easy) 目录 LeetCode刷题记录15--21. Merge Two Sorted Lists(easy) ...

  5. Leetcode 21:Merge Two Sorted Lists(golang实现合并两条已经排序的链表)

    21.Merge Two Sorted Lists 题目链接:题目链接 Merge two sorted linked lists and return it as a new list. The n ...

  6. 21.Merge Two Sorted Lists 、23. Merge k Sorted Lists

    21.Merge Two Sorted Lists 初始化一个指针作为开头,然后返回这个指针的next class Solution { public:ListNode* mergeTwoLists( ...

  7. LeetCode 21.23.剑指 Offer II 078. 合并两个有序链表 | C语言版

    LeetCode 21. 合并两个有序链表 | C语言版 LeetCode 21. 合并两个有序链表 题目描述 解题思路 思路一:使用栈 代码实现 运行结果 参考文章: 思路二:减少遍历节点数 代码实 ...

  8. 《LeetCode力扣练习》第21题 合并两个有序链表 Java

    <LeetCode力扣练习>第21题 合并两个有序链表 Java 一.资源 题目: 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例 ...

  9. 【LeetCode】【HOT】21. 合并两个有序链表(递归)

    [LeetCode][HOT 100]21. 合并两个有序链表 文章目录 [LeetCode][HOT 100]21. 合并两个有序链表 package hot;import java.util.Ar ...

最新文章

  1. [转]解读ASP.NET 5 MVC6系列(7):依赖注入
  2. python字典高级用法_Python 进阶编程之字典的高级用法
  3. Java设计模式之适配器模式在jdk中的应用
  4. 时序分析:串匹配-KMP算法
  5. 取得MS SQL 2000数据库一个表的所有列名
  6. 计算机转正述职报告ppt,转正述职报告ppt
  7. java算法之冒泡排序
  8. 10.11 安装pod
  9. ios12关闭设置角标_iOS 12.4.2为停产的设备带来了安全修复程序
  10. Linux下openSSL安装并颁发证书
  11. Linux内核多线程(三)
  12. SLAM和三维重建中的SFM区别
  13. php将日期转为时间戳,php将指定日期转换为时间戳的方法
  14. 客房管理系统前台代码html,中顶酒店客房前台管理系统
  15. Spring Boot 阿里云短信平台手机验证码测试
  16. 云计算要掌握哪些知识点 该怎么学云计算开发
  17. mac关闭谷歌自动更新
  18. MPLS 网络技术 — 组网方案
  19. 6.再来一题除法算术题
  20. MATLAB2020a WIN10安装教程

热门文章

  1. php设置开放时段,设置php规则
  2. Android Studio汉化包
  3. UPYUN CTO 黄慧攀:云 CDN 的技术架构演进之路
  4. ROS TEB源码分析
  5. 联网住宅和智能建筑:解决可靠性、收敛性、连通性
  6. C++ Primer_1 书店程序
  7. word怎么转换成pdf文档——两种转换方法分享
  8. jquery中tree节点取消选择
  9. 读取文件时的错误纠正
  10. 自动化专业本科学生的就业方向