class Solution {
public:
ListNode* Merge(ListNode* pHead1, ListNode* pHead2) {
ListNode *head=new ListNode(0);//创建一个头结点,归一化操作,否则第一个加入的节点还要单独做。
ListNode *p=head;//两个指针一个指向头结点,一个指向尾节点。
while(pHead1&&pHead2){
if(pHead1->val<pHead2->val)
{
p->next=pHead1;//p链接值小的指针
pHead1=pHead1->next;//链表头节点后移。
}else{
p->next=pHead2;
pHead2=pHead2->next;
}
p=p->next;//重新指向尾节点
}
p->next=pHead1?pHead1:pHead2;
return head->next;
}
};

京公网安备 11010502036488号