parcours des arcs d'un graphe
Salut à tous,
J'ai un graphe orienté et je souhaite parcourir les arcs [chaque arc visité une seule fois] de ce graphe mais je suis un peu bloqué je présente l'algorithme que j'essaie d'appliquer et aussi mon début de code.
Algorithme:
Code:
1 2 3 4 5 6 7 8 9 10 11
|
procedure DFS(G, v):
label v as explored
for all edges e in G.incidentEdges(v) do
if edge e is unexplored then
w = G.adjacentVertex(v, e)
if vertex w is unexplored then
label e as a discovered edge
recursively call DFS(G, w)
else
label e as a back edge |
Bout de code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
public ArrayList<Noeud> oneTour(Noeud <T> s,ArrayList<Noeud> ch){
ArrayList<Arc<T>> chemin=new ArrayList<>();
ch=new ArrayList<>();
ch.add(s);
s.setMarque(true);
List<Arc<T>> out=s.getOutArcList();
for(Arc<T>e :out){
Noeud<T> w= e.getTo();
if((e.mark==false)){
chemin.add(e);
ch.add(w);
}
oneTour(w,ch);
} |
Ce code ne fonctionne pas car m'affiche comme erreur StackOverflowError
J'ai besoin de vos aides [conseil, correction :D ...].
Merci à vous.