正常的链表操作。
class Solution {
public:
ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) {
if (l1 == nullptr || l2 == nullptr) return (l1 == nullptr ? l2 : l1);
ListNode *head = nullptr;//(l1->val < l2->val ? l1, l1=l1->next : l2, l2=l2->next);
if (l1->val < l2->val) head = l1, l1=l1->next; else head = l2, l2=l2->next;
ListNode *aux = head;
while (l1 != nullptr && l2 != nullptr) {
if (l1->val < l2->val) { aux->next = l1; l1 = l1->next; }
else { aux->next = l2; l2 = l2->next; }
aux = aux->next;
}
if (l1 == nullptr && l2 == nullptr) return head;
else aux->next = (l1 == nullptr ? l2 : l1);
return head;
}
};