难度简单204
输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
示例1:
输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4
class Solution {
public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
ListNode newNode=new ListNode(0);
ListNode cur=newNode;
while(l1!=null&&l2!=null){
if(l1.val>=l2.val){
cur.next=l2;
l2=l2.next;
}else{
cur.next=l1;
l1=l1.next;
}
cur=cur.next;
}
if(l1==null){
cur.next=l2;
}
if(l2==null){
cur.next=l1;
}
return newNode.next;
}
}
1.这里首先建了一个新节点准备为新生成的链表铺垫
2.两边的节点都不为空,比较两个链表的节点,较小的一方加入到新链表
3.循环走完后一方为空的,把不为空的一方加到新链表的后面就可以了
4.return 的是newNode.next因为主要新建的节点没用,我赋值为零