[leetcode] 21.合并两个有序链表
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
示例 1:
输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4]
示例 2:
输入:l1 = [], l2 = [] 输出:[]
示例 3:
输入:l1 = [], l2 = [0] 输出:[0]
解法1:
思路:建立一个空的链表,通过传值的形式,把小的值传入到新链表里。
class Solution(object):def mergeTwoLists(self,l1,l2):merge = ListNode()merge1 = mergecurr1 = l1curr2 = l2while curr1 != None and curr2 != None:if curr1.val <= curr2.val:merge1.next = curr1curr1 = curr1.nextelse:merge1.next = curr2curr2 = curr2.nextmerge1 = merge1.nextif curr1 != None:merge1.next = curr1else:merge1.next = curr2return merge.next
解法2:递归
class Solution:def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:if l1== None:return l2if l2 == None:return l1if l1.val < l2.val:l1.next = self.mergeTwoLists(l1.next,l2)return l1else:l2.next = self.mergeTwoLists(l1,l2.next)return l2
[leetcode] 21.合并两个有序链表相关推荐
- [递归|迭代] leetcode 21 合并两个有序链表
[递归|迭代] leetcode 21 合并两个有序链表 1.题目 题目链接 将两个升序链表合并为一个新的升序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2 ...
- LeetCode 21. 合并两个有序链表(链表)
上一篇博客:LeetCode 20. 有效的括号(栈.字符串) 写在前面:大家好!我是ACfun,我的昵称来自两个单词Accepted和fun.我是一个热爱ACM的蒟蒻.最近萌生了刷LeetCode ...
- Java实现 LeetCode 21 合并两个有序链表
21. 合并两个有序链表 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1 ...
- LeetCode 21合并两个有序链表22括号生成
微信搜索bigsai,回复进群,加入打卡.维护不易,欢迎点赞支持! 合并两个有序列表 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 ...
- 【Java】leetCode 21 合并两个有序链表
题目 : 将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 解题思路 : 1.依据以上两个升序链表进行拼接: 2.先定义一个傀儡节点newHead,用来 ...
- LeetCode 21. 合并两个有序链表(单链表)
文章目录 1. 题目信息 2. 解题 1. 题目信息 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例:输入:1->2->4, 1-> ...
- leetcode - 21. 合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1->2- ...
- leetcode 21.合并两个有序链表
题目 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1-> ...
- LeetCode 21 ——合并两个有序链表
1. 题目 2. 解答 新建一个带有哨兵结点的链表,依次比较两个有序链表的结点值,将较小值的结点插入到新链表后面.直到其中一个比较完毕,将另一个链表剩余的结点全部放到新链表最后面即可.最后,可以删除哨 ...
- 81. Leetcode 21. 合并两个有序链表 (排序)
将两个升序链表合并为一个新的 升序 链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例 1:输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] ...
最新文章
- FutureTask demo
- oracle中join另一个表后会查询不出一些数据_阿里规定超过3张表,禁止JOIN,为何?
- 有限单元法基本原理和数值方法_有限元法分析结果的四类误差,你知道吗?
- java 位运算_java学习之运算符与表达式(四)
- linux 脚本 整数 赋值,shell基础!!熟悉编程规范与变量
- python 网络渗透_python 网络编程(渗透与编程一)
- 在tomcat文件夹下启动war项目
- win10系统安装SQLServer2008r2最全教程
- Python内置函数详解
- OSI网络七层协议以及每层的作用
- MPQ文件系统优化(续)
- java计算机毕业设计小区失物招领网站源程序+mysql+系统+lw文档+远程调试
- 中职计算机应用教学的重要性,中职《计算机应用基础》教学中理实一体化的有效开展...
- 校验导入的Excel文件标题行与要求的标题行是否一致
- java中retry的使用
- 【pycharm matlibplot中横轴与纵轴的刻度线向内如何调整】
- 高校借力泛微,搭建一体化、流程化的​内控管理平台
- 单片机STC89C52
- 微信小程序request 、跨域问题
- SEO动态渲染的烟雾测试