133.克隆图

133.克隆图

image-20200812234510331

题解

​ 本题就是单单克隆图的值和结构,而不克隆地址。我们遍历克隆节点,需要一个哈希表记录节点中

连接记录的键值对,防止死循环。随后递归克隆即可。

image-20200812235456943

class Solution {
    
    
    private HashMap <Node,Node> visited = new HashMap<> ();
    public Node cloneGraph(Node node) {
    
    
       if(node == null){
    
    
           return node;
       }

       if(visited.containsKey(node)){
    
    
           return visited.get(node);
       }

       Node cloneNode = new Node(node.val,new ArrayList());
       visited.put(node,cloneNode);

       for(Node neighbor: node.neighbors){
    
    
           cloneNode.neighbors.add(cloneGraph(neighbor));
       }
       return cloneNode;
    }
}

猜你喜欢

转载自blog.csdn.net/Rush6666/article/details/107969578