16.Merge_Two_Sorted_List
2024年2月2日小于 1 分钟约 109 字
// 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
struct ListNode {
int val;
struct ListNode* next;
ListNode(int x) : val(x), next(nullptr) {}
};
class Solution {
public:
ListNode* Merge(ListNode* pHead1, ListNode* pHead2) {
auto fakeHead = new ListNode(0), cur = fakeHead;
while (pHead1 && pHead2) {
if (pHead1->val < pHead2->val) {
cur->next = pHead1;
pHead1 = pHead1->next;
} else {
cur->next = pHead2;
pHead2 = pHead2->next;
}
cur = cur->next;
}
cur->next = pHead1 ? pHead1 : pHead2;
return fakeHead->next;
}
};