题目
解法
python
class Solution:def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode:prehead = ListNode(-1)curr = preheadwhile l1 and l2:if l1.val<l2.val:curr.next = l1l1 = l1.nextelse:curr.next = l2l2 = l2.nextcurr = curr.nextcurr.next = l1 if l1 else l2return prehead.next
C++
class Solution {
public:ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
ListNode* curr = new ListNode(0);ListNode* ans = curr;while(l1 && l2){
if(l1->val < l2->val){
curr->next = l1;curr = curr->next;l1 = l1->next;}else{
curr->next = l2;curr = curr->next;l2 = l2->next;}}while(l1){
curr->next = l1;curr = curr->next;l1 = l1->next;}while(l2){
curr->next = l2;curr = curr->next;l2 = l2->next;}return ans->next;}
};