Python solution with detailed explanation

  • 0


    Clone Graph

    • Simple recursive algorithm to copy with a dictionary
    class Solution:
        def helper(self, node, cache):
            if node is None:
                return None
            elif node in cache:
                return cache[node]
                cache[node] = UndirectedGraphNode(node.label)
                for x in node.neighbors:
                    cache[node].neighbors.append(self.helper(x, cache))
                return cache[node]
        # @param node, a undirected graph node
        # @return a undirected graph node
        def cloneGraph(self, node):
            return self.helper(node, {})

Log in to reply

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.