题目描述:
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
题目分析:
链表1的头结点的值小于链表2的头结点的值,因此链表1的头结点是合并后链表的头结点。
剩余的结点中,链表2的头结点的值小于链表1的头结点的值,因此链表2的头结点是剩
余结点的头结点,把这个结点和之前已经合并好的链表的尾结点链接起来。
代码:
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function Merge(pHead1, pHead2)
{
// write code here
if(pHead1 == null){
return pHead2;
}
else if(pHead2 == null){
return pHead1;
}
let mergedHead = null;
if(pHead1.val < pHead2.val){
mergedHead = pHead1;
mergedHead.next = Merge(pHead1.next, pHead2)
}else{
mergedHead = pHead2;
mergedHead.next = Merge(pHead1, pHead2.next)
}
return mergedHead
}