text function cloneGraph(node): if node == null: return null visited = empty hash map function dfs(node): if node in visited: return visited[node] clone = new Node(node.val) visited[node] = clone for neighbor in node.neighbors: clone.neighbors.add(dfs(neighbor)) return clone return dfs(node) Time complexity: where = nodes, = edges. Space complexity: for the hash map and recursion stack.
##### ###### ##### ### # # ### # # ###### ## ## ## ## ## ## ## # # # # # ## ##### #### ##### # # # # # # # #### ## # ## ## ## ## # # # # # ## ## # ###### ## ### # ### # ######
$ curl repovive.com/roadmaps/maang-interview-prep/graphs/clone-graph-pseudocode
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░███████████████████████████████████████████████████████████████████████████████