9

#yyds干货盘点# LeetCode 热题 HOT 100:合并两个有序链表

 2 years ago
source link: https://blog.51cto.com/u_13321676/5689371
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

#yyds干货盘点# LeetCode 热题 HOT 100:合并两个有序链表

精选 原创

灰太狼_cxh 2022-09-19 15:49:57 博主文章分类:leetcode ©著作权

文章标签 链表 升序 代码实现 文章分类 Java 编程语言 阅读数226

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

输入:l1 = [1,2,4], l2 = [1,3,4]

输出:[1,1,2,3,4,4]

输入:l1 = [], l2 = []

输出:[]

输入:l1 = [], l2 = [0]

输出:[0]

代码实现:

/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
ListNode dummy = new ListNode(-1);
ListNode cur = dummy;
while(list1 != null && list2 != null){
if(list1.val < list2.val){
cur.next = new ListNode(list1.val);
list1 = list1.next;
} else {
cur.next = new ListNode(list2.val);
list2 = list2.next;
}
cur = cur.next;
}
cur.next = list1 == null ? list2 : list1;
return dummy.next;

}
}
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK