We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent f5d7573 commit 3d4b631Copy full SHA for 3d4b631
clone-graph/clone-graph.cpp
@@ -0,0 +1,42 @@
1
+/*
2
+// Definition for a Node.
3
+class Node {
4
+public:
5
+ int val;
6
+ vector<Node*> neighbors;
7
+ Node() {
8
+ val = 0;
9
+ neighbors = vector<Node*>();
10
+ }
11
+ Node(int _val) {
12
+ val = _val;
13
14
15
+ Node(int _val, vector<Node*> _neighbors) {
16
17
+ neighbors = _neighbors;
18
19
+};
20
+*/
21
+
22
+class Solution {
23
+ unordered_map<Node*, Node*> mp;
24
25
+ Node* cloneGraph(Node* node) {
26
+ if(node == NULL)
27
+ return NULL;
28
29
+ if(mp.find(node) != mp.end())
30
+ return mp[node];
31
32
+ Node* t = new Node(node->val);
33
+ mp[node] = t;// node to clone mapping
34
35
+ for(auto& n: node->neighbors){
36
+ t->neighbors.push_back(cloneGraph(n));
37
38
39
40
+ return t;
41
42
0 commit comments