题解 | #合并两个排序的链表#

合并两个排序的链表

http://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337

    this.val = x;
    this.next = null;
}
function Merge(pHead1, pHead2)
{
    // write code here
    let cur = new ListNode(-1)
    let head = cur
    while(pHead1 && pHead2){
        if(pHead1.val <= pHead2.val){
            head.next = pHead1
            head = head.next
            pHead1 = pHead1.next
        }
        else{
            head.next = pHead2
            head = head.next
            pHead2 = pHead2.next
        }
    }
    if(pHead1){
        head.next = pHead1
    }else{
        head.next = pHead2
    }
    return cur.next
}
module.exports = {
    Merge : Merge
};

alt

全部评论
多少有点问题,比如当输入的一个为空,而 另外一个还有很多值,这个就只做了一步的处理。{1,2},{3,4,5,6} 所以要多做一下,单只有一个的判断 while (pHead1||pHead2) { if(pHead1) { pre.next = pHead1; pre = pre.next ; pHead1 = pHead1.next } else { pre.next = pHead2; pre = pre.next ; pHead2 = pHead2.next } }
点赞
送花
回复
分享
发布于 2022-01-23 17:17

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务