Merge Two Sorted List

LeetCode #21


Description:

Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.

Example:

Note

Idea:

curr->next = node
node = node->next

curr = curr->next

Code:

class Solution {
public:
    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
        if(l1==NULL || l2==NULL) return l1==NULL? l2 : l1;
        ListNode dummy(-1);

        ListNode * curr = &dummy;
        while(l1!=NULL && l2!=NULL){
            if(l1->val<=l2->val){
                curr->next=l1;
                l1=l1->next;
            }
            else{
                curr->next=l2;
                l2=l2->next;
            }
            curr=curr->next;
        }

        curr->next = l1==NULL? l2: l1;

        return dummy.next;
    }
};

results matching ""

    No results matching ""