题目
解题
创建一个虚拟头结点newhead,然后比较l1与l2的值大小,对newhead进行头插。
public ListNode MergeTwoLists(ListNode l1, ListNode l2) {
if(l1==null) return l2;
if(l2==null) return l1;
ListNode newhead=new ListNode(0);
ListNode pi=newhead;
while ((l1!=null)&&(l2!=null))
{
if(l1.val>l2.val) //swap(l1,l2);
{
pi.next=l2;
l2=l2.next;
// pi=pi.next;
}
else{
pi.next=l1;
l1=l1.next;
// pi=pi.next;
}
pi=pi.next;
}
pi.next=l1!=null?l1:l2;
return newhead.next;