难度等级:简单

题目描述:

将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

示例:

输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/merge-two-sorted-lists
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路:

1、此题主要考察对链表的操作

2、解法有多种,此处采用递归

3、不断比较大小,更新链表的下一节点

解题代码:

# Definition for singly-linked list.
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None 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数值小于l2,更新l1的下一节点,返回l1当前值
l1.next = self.mergeTwoLists(l1.next,l2) # 先将原l1.next传入进行递归比较,得到的值用来更新l1.next
return l1
else: # 若当前l1数值大于等于l2,更新l2的下一节点,返回l2当前值
l2.next = self.mergeTwoLists(l1,l2.next) # 先将原l2.next传入进行递归比较,得到的值用来更新l2.next
return l2

最新文章

  1. 快速开发基于 HTML5 网络拓扑图应用
  2. HOLOLENS如何调节屏幕亮度和音量?
  3. 无废话ExtJs 入门教程十六[页面布局:Layout]
  4. Centos 安装 neo4j
  5. WPF错误:当前上下文中不存在名称“InitializeComponent”
  6. win10蓝屏问题,关于驱动kisSaasUrlRedirectKnl64.sys 的
  7. imp-00002 无法打开。。
  8. Xcode 创建静态库和动态库
  9. careercup-C和C++ 13.10
  10. cocos2d-x android项目引用so库编译
  11. WCF、.Net Remoting、Web Service概念及区别
  12. 微信/易信公共平台开发(二):自定义菜单的PHP实现(提供源码)
  13. Linux 08
  14. 201521123048 《Java程序设计》第14周学习总结
  15. 巩固java(三)---java修饰符
  16. 为什么需要micro-service构建平台
  17. 【Android UI设计与开发】第03期:引导界面(三)仿微信引导界面以及动画效果
  18. (1)StringBuilder类和StringBuffer类 (2)日期相关的类 (3)集合框架 (4)List集合
  19. java基础学习总结——方法的重载(overload)
  20. 一学就会pip换镜像源

热门文章

  1. Luogu P3263 [JLOI2015]有意义的字符串
  2. PAT (Advanced Level) 1128~1131:1128N皇后 1129 模拟推荐系统(set&lt;Node&gt;优化) 1130 中缀表达式
  3. Adobe Illustrator CC 2017安装方法
  4. 解题报告:luogu P2678 跳石头
  5. 139. Word Break 以及 140.Word Break II
  6. 007、MySQL日期取当前时间,取昨天
  7. NO6 alias-unalias命令,递归创建目录,如何取消覆盖提示
  8. LeetCode1005 K次取反后最大化的数组和(贪心+Java简单排序)
  9. Golang的标准命令简述
  10. 通过fiddler修改通讯返回值