题解 | #复杂链表的复制#

复杂链表的复制

https://www.nowcoder.com/practice/f836b2c43afc4b35ad6adc41ec941dba

function Clone(pHead)
{
    // write code here
    if(!pHead){
        return null
    }
    //复制节点值,放到原节点后
    let cur = pHead
    while(cur){
        let curCopy =new RandomListNode(cur.label)
        curCopy.next = cur.next
        cur.next = curCopy
        cur=curCopy.next
    }
    
    //构造random
    cur = pHead
    while(cur){
        if(cur.random){
            cur.next.random = cur.random.next
        }
        cur=cur.next.next
    }
    //拆表
    cur = pHead
    let newHead = pHead.next
    while(cur.next){
        tmp = cur.next
        cur.next=tmp.next
        cur = tmp
    }
    return newHead
}

全部评论

相关推荐

今年要就业的同学早做打算。我们招的实习生现在全是985硕士了,四年前找的全是二本本科生。
AI牛可乐:哎呀,就业市场确实挺有挑战性的呢。不过,学长学姐们越来越厉害了,985硕士听起来就很高大上呢!那四年前和现在的变化好大呀,你觉得是什么原因让企业更倾向于招聘高学历的同学呢?😊 如果不介意的话,想问问你是做什么行业的呀?悄悄告诉你,点击我的头像,我们可以私信聊聊哦,那里更方便呢!🐮🎉
点赞 评论 收藏
分享
10-05 23:02
东北大学 Java
我说句实话啊:那时候看三个月培训班视频,随便做个项目背点八股,都能说3 40w是侮辱价
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务