class Solution {
public:
unordered_map<Node*,Node*> copy;
Node* copyRandomList(Node* head) {
if(!head) return NULL;
Node* newhead = new(Node)(head->val);
copy[head] = newhead;
newhead->next = copyRandomList(head->next);
newhead->random = copy[head->random];
return newhead;
}
};
时间复杂度:O(N),空间复杂度O(2N)
使用哈希表保存原版与副本