剑指offer(25)
剑指offer(25)
剑指 Offer 25. 合并两个排序的链表
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
示例1:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
限制:
0 <= 链表长度 <= 1000
经典题目
class Solution {
public:
ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
//虚拟头节点
ListNode* dummy=new ListNode(-1);
ListNode* p=dummy;
ListNode* p1=l1;
ListNode* p2=l2;
while(p1!=NULL&&p2!=NULL){
if(p1->valval){
p->next=p1;
p=p->next;
p1=p1->next;
}else{
p->next=p2;
p=p->next;
p2=p2->next;
}
}
if(p1==NULL&&p2!=NULL){
p->next=p2;
}
if(p1!=NULL&&p2==NULL){
p->next=p1;
}
return dummy->next;
}
};