虽然JGraphT分离添加顶点和添加边缘的行为是好的,但是当你想要将两者结合起来时,肯定会出现这种情况吗?换句话说,如果你试图添加一个边缘,其中任何一个(或两个)顶点不在图中,那么添加它们?
JGraphT是否有编写3个方法调用的快捷方式?
答案 0 :(得分:1)
您可以简单地覆盖JGraphT的方法,使其添加图中尚不存在的顶点:
@Override
public E addEdge(V sourceVertex, V targetVertex) {
if (!containsVertex(sourceVertex)) {
addVertex(sourceVertex);
}
if (!containsVertex(targetVertex)) {
addVertex(targetVertex);
}
return super.addEdge(sourceVertex, targetVertex);
}