leetcode中怎么合并两个排序的链表
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,leetcode中怎么合并两个排序的链表,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。题目输入两个递增排序的链表,合并这
千家信息网最后更新 2026年11月03日leetcode中怎么合并两个排序的链表
leetcode中怎么合并两个排序的链表,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
题目
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4限制:0 <= 链表长度 <= 1000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/he-bing-liang-ge-pai-xu-de-lian-biao-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题解
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode newHead = new ListNode(-1); ListNode cursor = newHead; while(l1 != null && l2 != null) { if (l1.val <= l2.val) { cursor.next = l1; l1 = l1.next; } else { cursor.next = l2; l2 = l2.next; } cursor = cursor.next; } if (l1 == null) { cursor.next = l2; } if (l2 == null) { cursor.next = l1; } return newHead.next; }}这里先创建一个newHead节点来表示合并后链表的头指针,然后创建一个cursor,其初始值为newHead;之后同时遍历l1及l2,取最小的作为cursor.next,同时该链表前进一个节点,并且cursor跟着前进;最后再将cursor.next指向尚未遍历完的链表的剩余节点;之后返回头指针指向的节点
小结
合并两个有序链表的基本思路就是设置一个cursor以及新链表的头指针,然后同时遍历两个链表,取小的节点作为cursor的next,然后该链表往前进,cursor也跟着往前进,最后再将cursor.next指向尚未遍历完的链表的剩余节点
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
节点
两个
排序
同时
指向
指针
尚未
跟着
剩余
帮助
输入
最小
有序
清楚
内容
出处
商业
官方
对此
小结
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
新华互联网科技
奇酷互联网科技
极限挑战互联网科技
互联网科技网站
海南购全球互联网科技
广州慧亚互联网科技怎么样
广州恒生互联网科技有限
互联网和黑科技的看法
天津腾达互联网科技有限公司
互联网科技创新的路径
山东子淼互联网科技有限公司
电子商务与互联网科技的关系
图游互联网科技
东营紫格互联网科技
国产互联网科技公司
互联网科技收购价值
求路客互联网科技电话
广州三三互联网科技有限公司
互联网科技自媒体灵感
武汉亿视互联网科技有限公司
朗新科技与工业互联网
北京互联网科技
礼当家互联网科技
互联网科技有限公司 翻译
北京华百购互联网科技有限公司
互联网科技教育视频
赶超互联网科技 微信多开
互联网科技博主张洲
互联网科技对化妆品行业
互联网科技创新方面的资料