2

JGraphT が頂点を追加する操作とエッジを追加する操作を分離するのは良いことですが、2 つを組み合わせたい場合は確かにありますか? つまり、頂点のいずれか (または両方) がグラフにないエッジを追加しようとすると、それらを追加しますか?

JGraphT には、3 つのメソッド呼び出しを作成するための近道がありますか?

4

1 に答える 1

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);
}
于 2013-04-18T13:12:15.013 に答える