0

簡単な説明: エッジの半分を保存しない有向グラフがあります。

次のコードがあります。

int startV = sc.nextInt();
int endV = sc.nextInt();
int length = sc.nextInt();
a = maze.insertVertex(startV);
b = maze.insertVertex(endV);
e = maze.insertEdge(a, b, length);

次に、insertEdge に次のものがあります。

public Edge insertEdge(Vertex v, Vertex w, int length) {
    Edge e = new Edge(v, w, length);
    if(!edges.contains(e))
    {
        v.addOutgoingEdge(e);
        w.addIncomingEdge(e);
        edges.add(e);
    }
    return e;
}

着信エッジと発信エッジのコードは次のとおりです。

public void addIncomingEdge(Edge e)
{
    incomingEdges.add(e);
}

public void addOutgoingEdge(Edge e)
{
    outgoingEdges.add(e);
}

問題は、outGoing が a に追加されるのに、incoming エッジが b に追加されないことです!

誰かが私を助けることができますか?

前もって感謝します!

4

0 に答える 0