题意:合并两个排列好的队列。
思路:列表的基本操作。
class Solution {
public:
ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
ListNode *nextl1 = l1;
ListNode *nextl2 = l2;
ListNode *head = new ListNode(0);
ListNode *next = head;
while(nextl1 ||nextl2) {
int val1 = 9999999;
int val2 = 9999999;
if(nextl1) val1 = nextl1->val;
if(nextl2) val2 = nextl2->val;
if(val1 < val2) {
ListNode *temp = new ListNode(val1);
next->next = temp;
next = temp;
nextl1 = nextl1->next;
}
else {
ListNode *temp = new ListNode(val2);
next->next = temp;
next = temp;
nextl2 = nextl2->next;
}
}
return head->next;
}
};