35 鍊錶 複雜鍊錶的複製

2021-09-13 00:01:36 字數 653 閱讀 9810

輸入乙個複雜鍊錶(每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點),返回結果為複製後複雜鍊錶的head。(注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空)

//2、重新遍歷鍊錶,複製老結點的隨機指標給新結點,如a1.random = a.random.next;

currentnode = phead;

while(currentnode != null)

//一開始這麼寫的

// while(currentnode != null)

//3、拆分鍊錶,將鍊錶拆分為原鍊錶和複製後的鍊錶

randomlistnode newhead = phead.next;

currentnode = phead;

while(currentnode != null)

return newhead;}}

(考點)分解讓複雜問題簡單化~

35 複雜鍊錶的複製

請實現copyrandomlist函式,複製乙個複雜鍊錶。在複雜鍊錶中,每個節點除了有乙個next指標指向下乙個節點,還有乙個random指標指向鍊錶中的任意節點或者null。示例 1 輸入 head 7,null 13,0 11,4 10,2 1,0 輸出 7,null 13,0 11,4 10,...

35題複雜鍊錶的複製

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

35 複雜鍊錶的複製 python

題目 請實現乙個函式,複製乙個複雜鍊錶。在複雜鍊錶中,每個節點除了有乙個m pnext指標指向下乙個節點,還有乙個m psibling指標指向鍊錶中的任意節點或者nullptr。def complex list clone head node node if not head return none...