您的位置:首页 > 其它

LeetCode-Clone Graph

2015-09-29 07:57 387 查看
不要被题的样子吓到 只是很简单的recursive 但是记得node要存在hashmap里面 已经建立过的node就不要再建一遍了

public class Solution {
private HashMap <Integer, UndirectedGraphNode> map = new HashMap<Integer, UndirectedGraphNode>();
public UndirectedGraphNode cloneGraph(UndirectedGraphNode node) {
if ( node == null )
return null;
int label = node.label;
if ( map.containsKey( label ) )
return map.get(label);
UndirectedGraphNode res = new UndirectedGraphNode( label );
map.put( label, res );
for ( UndirectedGraphNode nei : node.neighbors ){
UndirectedGraphNode neighbor = cloneGraph( nei );
res.neighbors.add( neighbor );
}
return res;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: