《劍指offer》 複雜鍊錶的複製

2021-08-15 06:59:22 字數 701 閱讀 7378

/*

* 輸入乙個複雜鍊錶(每個節點中有節點值,以及兩個指標,

* 乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點),返回結果為複製後複雜鍊錶的head。

*(注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空)

* 注:本題分三步走:第一步先複製鍊錶;第二部根據複製鍊錶的特點,對新鍊錶關聯上隨機節點;第三步拆分鍊錶

*/class randomlistnode

}public class complicatedlistclone

//給複製後的鍊錶新增隨機節點指向

pcur = phead;

while(pcur != null)

pcur = pcur.next.next;

} //拆分鍊錶

randomlistnode copyhead = phead.next;

randomlistnode copycur = copyhead;

pcur = phead;

while(pcur != null)

pcur = pcur.next;

copycur = copycur.next;

} return copyhead; }

public static void main(string args)

}}

劍指offer複雜鍊錶複製

題目描述 輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 我的 思路比較笨,就是首先構造乙個正常的不大random指標的鍊錶,然後再去遍歷...

劍指offer 複雜鍊錶複製

輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 解題思路 1 複製每個節點,如 複製節點a得到a1,將a1插入節點a後面 2 遍歷鍊錶,a...

劍指offer 複雜鍊錶複製

題目描述 輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 非遞迴方法 struct randomlistnode randomlistno...