还没有那个合并数组的难。。。
// struct ListNode {
// int val;
// struct ListNode *next;
// ListNode(int x) :
// val(x), next(NULL) {
// }
// };
class Solution {
public:
ListNode* Merge(ListNode* pHead1, ListNode* pHead2) {
ListNode* newList = new ListNode(0);
auto bak = newList;
while(pHead1 && pHead2){
if(pHead1->val <= pHead2->val){
newList->next = pHead1;
pHead1 = pHead1->next;
}else{
newList->next = pHead2;
pHead2 = pHead2->next;
}
newList = newList->next;
}
if(pHead1) newList->next = pHead1;
if(pHead2) newList->next = pHead2;
return bak->next;
}
}; 
京公网安备 11010502036488号