1. 程式人生 > >javascript 合併兩個有序連結串列LeetCod-21

javascript 合併兩個有序連結串列LeetCod-21

版權宣告:本文為博主原創文章,未經博主允許不得轉載

題目描述:

將兩個有序連結串列合併為一個新的有序連結串列並返回。新連結串列是通過拼接給定的兩個連結串列的所有節點組成的。 

示例:

輸入:1->2->4, 1->3->4
輸出:1->1->2->3->4->4
var mergeTwoLists = function(l1, l2) {
    var head=new ListNode(0);
    var curr=head;
    var p=l1,q=l2;
    while(p!=null&&q!=null){
    	if(p.val<q.val){
    		curr.next=new ListNode(p.val)
    		curr=curr.next;
    		p=p.next;
    	}
    	else if(p.val==q.val){
    		curr.next=new ListNode(p.val);
    		curr=curr.next;
    		curr.next=new ListNode(p.val);
    		curr=curr.next
    		p=p.next;
    		q=q.next;
    	}
    	else{
    		curr.next=new ListNode(q.val);
    		curr=curr.next;
    		q=q.next;
    	}
    }
    if(p!==null){
    	curr.next=p;
    }
    if(q!==null){
    	curr.next=q;
    }
    return head.next; 
};