39 lines
1.0 KiB
Java
39 lines
1.0 KiB
Java
package linkedlist;
|
||
|
||
import java.util.ArrayList;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* 题目: 21. 合并两个有序链表 (mergeTwoLists)
|
||
* 描述:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
|
||
|
||
* 链接:https://leetcode.cn/problems/merge-two-sorted-lists/
|
||
|
||
*/
|
||
public class MergeTwoLists {
|
||
public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
|
||
ListNode head = new ListNode(-1);
|
||
ListNode mv = head;
|
||
ListNode mv1 = list1;
|
||
ListNode mv2 = list2;
|
||
while(mv1 != null && mv2 !=null) {
|
||
if(mv1.val < mv2.val) {
|
||
mv.next = mv1;
|
||
mv1 = mv1.next;
|
||
}
|
||
else {
|
||
mv.next = mv2;
|
||
mv2 = mv2.next;
|
||
}
|
||
mv = mv.next;
|
||
}
|
||
if(mv1 == null) {
|
||
mv.next = mv2;
|
||
}
|
||
else {
|
||
mv.next = mv1;
|
||
}
|
||
return head.next;
|
||
}
|
||
}
|