Grüße,
Ich habe einen Graphen und brauche eine Liste der Kanten die sich direkt zwischen knotenListe[start_index] und knotenListe[end_index] befinden. Dabei ist nicht wichtig ob es der kürzeste Weg ist, sondern nur, dass es ein direkter Weg ohne "Sackgassen" ist. Die Reihenfolge ist auch wichtig.
Mein Ansatz mit der Tiefensuche:
Hierbei sollten alle Knoten in wantedNodes und alle Kanten ind wantedEdeges gespeichert. Leider funktioniert dass so nicht, da auch die Sackgassen mit in die Listen aufgenommen werden.
Kann mir jemand helfen das Problem zu lösen?
Danke,
-Luk10-
Ich habe einen Graphen und brauche eine Liste der Kanten die sich direkt zwischen knotenListe[start_index] und knotenListe[end_index] befinden. Dabei ist nicht wichtig ob es der kürzeste Weg ist, sondern nur, dass es ein direkter Weg ohne "Sackgassen" ist. Die Reihenfolge ist auch wichtig.
Mein Ansatz mit der Tiefensuche:
Java:
public void depthFirstSearch(int start_index, int end_index) {
if (start_index != end_index) {
for(int i = 0; i < nodelist.length; i++) {
if (adjacencyMatrix[start_index][i] != null && !nodelist[i].isVisited()) {
wantedNodes.add(nodelist[i]);
wantedEdges.add(adjacencyMatrix[start_index][i]);
nodelist[i].setVisited(true);
depthFirstSearch(i, end_index);
}
}
}
}
Hierbei sollten alle Knoten in wantedNodes und alle Kanten ind wantedEdeges gespeichert. Leider funktioniert dass so nicht, da auch die Sackgassen mit in die Listen aufgenommen werden.
Kann mir jemand helfen das Problem zu lösen?
Danke,
-Luk10-