C++ short solution.


  • 2
    C
    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
        ListNode *dummy = new ListNode(0);
        ListNode *cur = dummy;
        while (l1 && l2) {
            if (l1->val < l2->val) {
                cur->next = l1;
                l1 = l1->next;
            } else {
                cur->next = l2;
                l2 = l2->next;
            }
            cur = cur->next;
        }
        if (l1) 
            cur->next = l1;
        else
            cur->next = l2;
        ListNode *tmp = dummy->next;
        delete dummy;
        return tmp;
    }

  • 2
    D

    forgot to delete dummy node? memory leak


  • 0
    C

    Thanks, you are correct. I should delete dummy node.


Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.