簡単な説明: エッジの半分を保存しない有向グラフがあります。
次のコードがあります。
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 に追加されないことです!
誰かが私を助けることができますか?
前もって感謝します!