题目:https://leetcode.com/problems/merge-two-sorted-lists/
代码:
/**
* 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) {
ListNode *currNode1 = l1;
ListNode *currNode2 = l2;
ListNode *retRoot = new ListNode(-1);
ListNode *prev = retRoot;
ListNode *curr;
while(currNode1 != NULL || currNode2 != NULL){
if(currNode1 != NULL && currNode2 != NULL) {
if(currNoåde1->val <= currNode2->val) {
curr = new ListNode(currNode1->val);
currNode1 = currNode1->next;
} else {
curr = new ListNode(currNode2->val);
currNode2 = currNode2->next;
}
prev->next = curr;
prev = prev->next;
} else if (currNode2 == NULL) {
prev->next = currNode1;
break;
} else {
prev->next = currNode2;
break;
}
}
return retRoot->next;
}
};