标题几乎概括了一切——
我使用 Jung 作为我的图模型,我想克隆我的图。有这方面的最佳做法吗?
谢谢
你可以做一个简单的顶点和边的副本:
Graph<V, E> src;
Graph<V, E> dest;
for (V v : src.getVertices())
dest.addVertex(v);
for (E e : src.getEdges())
dest.addEdge(e, src.getIncidentVertices(e));
这将创建一个新的图表,但内部的对象将通过引用传递,因此您可以使用此克隆库 https://code.google.com/p/cloning/
并做一个深拷贝:
Cloner cloner = new Cloner();
Graph<V, E> clonedGraph = cloner.deepClone(graph);