clone-graph Java code
来源:互联网 发布:mac优酷客户端 编辑:程序博客网 时间:2024/06/17 13:10
Clone an undirected graph. Each node in the graph contains alabeland a list of itsneighbors.
OJ’s undirected graph serialization:
Nodes are labeled uniquely.
We use#as a separator for each node, and,as a separator for node label and each neighbor of the node.
As an example, consider the serialized graph{0,1,2# 1,2# 2,2}.
The graph has a total of three nodes, and therefore contains three parts as separated by#.
First node is labeled as0. Connect node0to both nodes1and2.
Second node is labeled as1. Connect node1to node2.
Third node is labeled as2. Connect node2to node2(itself), thus forming a self-cycle.
Visually, the graph looks like the following:
1
/ \
/ \
0 — 2
/ \
_/
import java.util.*;/** * Definition for undirected graph. * class UndirectedGraphNode { * int label; * ArrayList<UndirectedGraphNode> neighbors; * UndirectedGraphNode(int x) { label = x; neighbors = new ArrayList<UndirectedGraphNode>(); } * }; */public class Solution { private HashMap<Integer,UndirectedGraphNode> map = new HashMap<>(); public UndirectedGraphNode cloneGraph(UndirectedGraphNode node) { return clone(node); } private UndirectedGraphNode clone(UndirectedGraphNode node) { if(node == null) return null; if(map.containsKey(node.label)){ return map.get(node.label); } UndirectedGraphNode clone = new UndirectedGraphNode(node.label); map.put(clone.label,clone); for(UndirectedGraphNode neighbor:node.neighbors){ clone.neighbors.add(clone(neighbor)); } return clone; }}
- clone-graph Java code
- CODE 130: Clone Graph
- [Leetcode] Clone Graph (Java)
- Clone Graph (Java)
- leetcode [Clone Graph] Java
- [LeetCode][Java] Clone Graph
- leetcode 日经贴,Cpp code -Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- Clone Graph
- TimeUtils 有关时间处理的工具类
- Java多线程的三种实现方法
- 洛谷1633 二进制
- opencv-视频入门
- BufferedInputStream与BufferedOutputStream用法简介
- clone-graph Java code
- 在zxing带三方包里添加打开摄像头灯光功能
- Socket通信
- CCF CSP认证考试历年真题 模板生成系统 C语言实现
- 手把手教你将Vim改装成一个IDE编程环境(图文)
- python--map函数
- Validform验证时可以为空,否则按照指定格式验证
- Centos之Git版本管理工具安装-yellowcong
- python 实现单例模式的四种方法