题目描述
解法
深度优先搜索
在这里插入代码片class Solution:
def copyRandomList(self, head: 'Node') -> 'Node':
def dfs(node):
if node is None:
return None
if node in visited:
return visited[node]
copy = Node(node.val,None,None)
visited[node] = copy
copy.next = dfs(node.next)
copy.random = dfs(node.random)
return copy
visited = {}
return dfs(head)