我自己写的
function Merge(pHead1, pHead2)
{
let dummyNode = new ListNode(-1);
let cur1 = pHead1, cur2 = pHead2;
let curM = dummyNode;
while(cur1 && cur2){
console.log(dummyNode.next);
if(cur1.val < cur2.val){
curM.next = new ListNode(cur1.val);
cur1 = cur1.next;
curM = curM.next;
}else{
curM.next = new ListNode(cur2.val);
cur2 = cur2.next;
curM = curM.next;
}
}
if(cur1){
curM.next = cur1;
}else{
curM.next = cur2;
}
return dummyNode.next;
}
优化后的
function Merge(pHead1, pHead2)
{
let dummyNode = new ListNode(-1);
let curM = dummyNode;
while(pHead1 && pHead2){
if(pHead1.val < pHead2.val){
curM.next = pHead1
pHead1 = pHead1.next;
}else{
curM.next = pHead2;
pHead2 = pHead2.next;
}
curM = curM.next;
}
curM.next = pHead1 ? pHead1 : pHead2;
return dummyNode.next;
}