forked from IF-LK-2020/breitensuche
findVertexByID() implementiert
This commit is contained in:
@@ -109,7 +109,33 @@ public class Breitensuche {
|
||||
// Nutze dazu die Hilfsmethode getVertexFromListByID, um aus
|
||||
// Liste der Nachbarknoten denjenigen, der alphabetisch als
|
||||
// erstes kommt herauszusuchen.
|
||||
|
||||
if(g.getVertex("Köln").getID().equals(pVertexID)){
|
||||
System.out.println("Köln gefunden");
|
||||
return true;
|
||||
} else {
|
||||
g.getVertex("Köln").setMark(true);
|
||||
searchQueue.enqueue(g.getVertex("Köln"));
|
||||
while(!searchQueue.isEmpty()){
|
||||
Vertex v = searchQueue.front();
|
||||
List<Vertex> cngbrs=copyList(g.getNeighbours(v));
|
||||
cngbrs.toFirst();
|
||||
while(cngbrs.hasAccess()){
|
||||
Vertex vs = getVertexFromListByID(cngbrs);
|
||||
if(!vs.isMarked()){
|
||||
System.out.println(vs.getID());
|
||||
if(vs.getID().equals(pVertexID)){
|
||||
System.out.println(vs.getID() +" gefunden");
|
||||
return true;
|
||||
}
|
||||
vs.setMark(true);
|
||||
searchQueue.enqueue(vs);
|
||||
}
|
||||
|
||||
}
|
||||
searchQueue.dequeue();
|
||||
}
|
||||
}
|
||||
System.out.println(pVertexID +" Nicht gefunden");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user