133. Clone Graph
四刷。。
这傻屌题都四刷了么。。
public class Solution {
Map<Integer, UndirectedGraphNode> map = new HashMap<>();
public UndirectedGraphNode cloneGraph(UndirectedGraphNode node) {
if (node == null) return null;
if (!map.containsKey(node.label)) {
map.put(node.label, new UndirectedGraphNode(node.label));
}
UndirectedGraphNode res = map.get(node.label);
res.neighbors = new ArrayList<UndirectedGraphNode>();
for (UndirectedGraphNode n : node.neighbors) {
if (!map.containsKey(n.label)) {
res.neighbors.add(cloneGraph(n));
} else {
res.neighbors.add(map.get(n.label));
}
}
return res;
}
}