##題目描述
輸入乙個複雜鍊錶(每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點),返回結果為複製後複雜鍊錶的head。(注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空)
##解題思路
第一步,原樣複製,每乙個複製的節點跟在原節點後邊
第二步,確定複製節點的任意指向
第三步,拆分長鍊表為原鍊錶和複製鍊錶
##**實現
/**
* */
package 鍊錶;
/** * * title:randomlistnodeclone
* * * description:
* *
* @author 田茂林
* @data 2023年8月22日 下午4:06:59
*/class randomlistnode
}public class randomlistnodeclone
//第一步,原樣複製,每乙個複製的節點跟在原節點後邊
randomlistnode p = phead;
while(p!=null)
p = phead;
//第二步,確定複製節點的任意指向
while(p!=null)
p=p.next.next;//p移動到下乙個舊節點。
} //第三步,拆分長鍊表為原鍊錶和複製鍊錶
randomlistnode head = phead.next;
randomlistnode cur = head;
p = phead;
while(p!=null)
p = p.next;
cur=cur.next;
} return head;
}}
劍指offer 複雜鍊錶的複製(鍊錶)
輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 struct randomlistnode class solution randomli...
劍指Offer程式設計練習025 複雜鍊錶的複製
題目描述 輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 struct randomlistnode 思路一 遞迴,但是不通過 class...
劍指offer複雜鍊錶複製
題目描述 輸入乙個複雜鍊錶 每個節點中有節點值,以及兩個指標,乙個指向下乙個節點,另乙個特殊指標指向任意乙個節點 返回結果為複製後複雜鍊錶的head。注意,輸出結果中請不要返回引數中的節點引用,否則判題程式會直接返回空 我的 思路比較笨,就是首先構造乙個正常的不大random指標的鍊錶,然後再去遍歷...