note | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
#考点/分解让复杂问题简单 #难度/4 牛客网
输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针 random 指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)
/*
function RandomListNode(x) {
this.label = x;
this.next = null;
this.random = null;
}
*/
function Clone(pHead) {
if (!pHead) {
return null;
}
//复制头结点
var copy = new RandomListNode(pHead.label);
copy.random = pHead.random;
copy.next = Clone(pHead.next);
return copy;
}