标签:des style blog io color sp for on div
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.
注意写出鲁棒性的代码,时间复杂度O(n),空间复杂度O(1)
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { if (l1 == NULL) return l2; if (l2 == NULL) return l1; ListNode *head = NULL; ListNode **p = &head; while (l1 && l2) { if(l1->val < l2->val) { *p = l1; p = &(l1->next); l1 = l1->next; } else { *p = l2; p = &(l2->next); l2 = l2->next; } } if (l1 != NULL) { *p = l1; } else { *p = l2; } return head; } };
[LeetCode] Merge Two Sorted Lists
标签:des style blog io color sp for on div
原文地址:http://www.cnblogs.com/vincently/p/4127310.html