alle Pfade speichern

IlikeJava

Mitglied
Java:
	public ArrayList<Stack<String>> findPaths(String s,String t){
		 Stack<String> Path  = new Stack<String>(); 
		HashMap<String,ArrayList<Vertex>> allAdj = new HashMap<String,ArrayList<Vertex>>();
		for(Vertex v: vertexlist){
			doAdjazenzList(v);
			allAdj.put(v.name, adjazenz);
			adjazenz.clear();
			
		}
		
		
		HashSet<String> available  = new HashSet<String>(); 
		  Path.push(s);
	        available.add(s);
	        if(s.equals(t))
	        	allpaths.add(Path);
	        
	        else{
	        	for(Vertex v: allAdj.get(s)){
	        		if(!available.contains(v.name))
	        			findPaths(v.name,t);
	        	}
	        }
	        Path.pop();
	        available.remove(s);
	        
		
		
		
		
		
		
		return allpaths;


Hallo,

sei G ein gerichteter Graph mit G=(V,E) , wobei V={s,a,b,c,d,t} und E={(1,2) ; (1,3) ; (2,4) ; (2,6) ;(3,5) ; (5,2) ; (5,6) ; (4,6) }.

Ich möchte mit der obigen Methode alle Pfade von s nach t speichern und dann in der main Methode printen. Wenn ich jedoch in der main Methode printe, dann erscheint nichts in der Konsole, als ob das , was ich printe, leer ist.

Bestimmt ist ein Fehler in der obigen Methode, den ich nicht sehe.

Könnt Ihr mir sagen, wo ich den Fehler gemacht habe ?


Gruß
ILikeJava
 
Zuletzt bearbeitet:

Neue Themen


Oben