
实现复制另一个链表,用的就是hashmap
让这个链表和我们复制之后的链表,分别作为key和value
import java.util.*;
public class Solution {
HashMap<RandomListNode,RandomListNode> map = new HashMap<>();
public RandomListNode Clone(RandomListNode pHead)
{
if(pHead==null){
return null;
}
if(map.containsKey(pHead)){
return map.get(pHead);
}
RandomListNode temp = new RandomListNode(pHead.label);
map.put(pHead,temp);
temp.next = Clone(pHead.next);
temp.random = Clone(pHead.random);
return temp;
}
}
本文介绍了一种使用HashMap进行链表复制的方法,通过将原链表及其复制后的链表作为键值对存储,实现链表节点的深度复制。代码示例展示了如何递归地复制链表,并正确设置每个节点的next和random指针。
221

被折叠的 条评论
为什么被折叠?



