美文网首页
133. Clone Graph

133. Clone Graph

作者: greatseniorsde | 来源:发表于2018-02-07 15:28 被阅读0次

第一步加到map里面value是null只是为了去重,下一次遇到就不会进queue

/**
 * Definition for undirected graph.
 * class UndirectedGraphNode {
 *     int label;
 *     List<UndirectedGraphNode> neighbors;
 *     UndirectedGraphNode(int x) { label = x; neighbors = new ArrayList<UndirectedGraphNode>(); }
 * };
 */
public class Solution {
    public UndirectedGraphNode cloneGraph(UndirectedGraphNode node) {
        if (node == null){
            return null;
        }        
        Queue<UndirectedGraphNode> queue = new LinkedList<>();
        Map<UndirectedGraphNode, UndirectedGraphNode> visited = new HashMap<>();
        queue.offer(node);
        visited.put(node, null);
        while (!queue.isEmpty()){
            UndirectedGraphNode curt = queue.poll();
            UndirectedGraphNode copy = new UndirectedGraphNode(curt.label);
            visited.put(curt, copy);
            for (UndirectedGraphNode nei : curt.neighbors){
                if (!visited.containsKey(nei)){
                    queue.offer(nei);
                    visited.put(nei, null);
                }
            }
        }
        for (UndirectedGraphNode orig : visited.keySet()){
            UndirectedGraphNode copy = visited.get(orig);
            for (UndirectedGraphNode nei : orig.neighbors){
                copy.neighbors.add(visited.get(nei));
            }
        }
        return visited.get(node);
    }
}

相关文章

  • Leetcode图

    133. 克隆图[https://leetcode-cn.com/problems/clone-graph/] 2...

  • 133. Clone Graph

    第一步加到map里面value是null只是为了去重,下一次遇到就不会进queue

  • 133. Clone Graph

  • 133. Clone Graph

    https://leetcode-cn.com/problems/clone-graph/ (图片来源https:...

  • 133. Clone Graph

    给无向连通图中节点的引用,返回图的深拷贝。 DFS 对访问过的节点进行标记,然后用dfs 时间复杂度O(n),空间...

  • Leetcode 133. Clone Graph

    题意:克隆一个无向图。 思路:因为是克隆所以需要一个map来存储克隆的映射关系,我们可以从给定的第一个节点向它的n...

  • LeetCode 133. Clone Graph

    Clone an undirected graph. Each node in the graph contain...

  • 133. Clone Graph 复制无向图

    bfs dfs

  • Clone graph

    Medium, Msc Question 复制一个无向graph。graph的每个节点包含一个label和以个ne...

  • Clone Graph

    Description Clone an undirected graph. Each node in the g...

网友评论

      本文标题:133. Clone Graph

      本文链接:https://www.haomeiwen.com/subject/tkfazxtx.html