[Leetcode] Merge Two Sorted Lists
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.
没啥好说的。
1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { 12 ListNode *res; 13 ListNode *p = new ListNode(0); 14 res = p; 15 while (l1 != NULL && l2 != NULL) { 16 if (l1->val < l2->val) { 17 p->next = l1; 18 l1 = l1->next; 19 } else { 20 p->next = l2; 21 l2 = l2->next; 22 } 23 p = p->next; 24 } 25 if (l1 != NULL) { 26 p->next = l1; 27 } 28 if (l2 != NULL) { 29 p->next = l2; 30 } 31 return res->next; 32 } 33 };