[Leetcode] Clone Graph (Java)
2014-02-14 15:44
495 查看
Clone an undirected graph. Each node in the graph contains a
a list of its
拷贝无向图
labeland
a list of its
neighbors.
拷贝无向图
public class Solution { public UndirectedGraphNode cloneGraph(UndirectedGraphNode node) { if(node==null) return null; UndirectedGraphNode ret = new UndirectedGraphNode(node.label); Map<Integer,UndirectedGraphNode> map = new HashMap<Integer, UndirectedGraphNode>(); Queue<UndirectedGraphNode> queue = new LinkedList<UndirectedGraphNode>(); map.put(ret.label, ret); queue.offer(node); queue.offer(ret); while(!queue.isEmpty()){ UndirectedGraphNode prev = queue.poll(); UndirectedGraphNode clone = queue.poll(); for(UndirectedGraphNode u : prev.neighbors){ if(map.containsKey(u.label)){ clone.neighbors.add(map.get(u.label)); }else { UndirectedGraphNode tmp = new UndirectedGraphNode(u.label); map.put(u.label,tmp); queue.offer(u); queue.offer(tmp); clone.neighbors.add(tmp); } } } return ret; } }
相关文章推荐
- leetcode [Clone Graph] Java
- Clone Graph leetcode java(DFS and BFS 基础)
- [leetcode-133]Clone Graph(java)
- [LeetCode][Java] Clone Graph
- Java for LeetCode 133 Clone Graph
- [Leetcode][JAVA] Clone Graph, Copy List with Random Pointer
- [LeetCode]Clone Graph
- [leetcode] Clone Graph
- LeetCode(133) Clone Graph
- LeetCode Clone Graph
- 146_leetcode_Clone Graph
- [LeetCode][JavaScript]Clone Graph
- LeetCode: Clone Graph
- LeetCode: Clone Graph [133]
- [LeetCode]Clone Graph
- [Leetcode]Clone Graph
- [LeetCode]Clone Graph
- 【Leetcode】 Clone Graph
- leetcode — clone-graph
- leetcode -- Clone Graph