题意
合并两个有序链表
思路
两个指针分别指向两个链表的头,每次选择较小的一个插入新的链表并且指针后移
代码
class Solution {
public:
ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
ListNode *head =
new ListNode(
0), *p = head;
while (l1 || l2) {
ListNode *t;
if (l1 && l2) t = (l1->val < l2->val ? l1 : l2);
else if (l1) t = l1;
else t = l2;
t == l1 ? l1 = l1->next : l2 = l2->next;
p->next = t;
p = p->next;
}
return head->next;
}
};
转载请注明原文地址: https://ju.6miu.com/read-10990.html