P
PfiffPaff
Gast
Hallo Leute, hab mir mal hier die Hanoi-Türme rekursiv gebastelt:
Aber das ist ja noch das einfache....
Ich würde das gerne iterativ machen und hab mir das jetzt erstmal mit Stift und Papier
überlegt.... nur irgendwie komm ich zu keinem Ergebnis da ich keine Intervalle erkennen kann.
Ich hab das mal jetzt auf dem Papier mit 6 Scheiben durchlaufen aber die Züge sind immer
anders....(Schwierig zu erklären) jedenfalls wüsste ich nicht wie ich das ordentlich in
Schleifen packen könnte damit es immer funktioniert.
Java:
public class HanoiRek {
static void Tow(String Quelle, String Hilf, String Ziel, int n) {
if (n == 1)
System.out.println ("Bewege Scheibe " +n+ " von " + Quelle + " nach " + Ziel);
else{
Tow(Quelle, Ziel, Hilf, n-1);
System.out.println ("Bewege Scheibe " +n+ " von " + Quelle + " nach " + Ziel);
Tow(Hilf, Quelle, Ziel, n-1);
}
}
public static void main (String args []) {
long start = System.currentTimeMillis();
System.out.println ("Tuerme von Hanoi");
Tow("Quelle", "Hilfsziel", "Ziel", 20);
long end = System.currentTimeMillis();
long duration = end - start;
System.out.println("Es hat: " + duration/1000 + " Sekunden gedauert!");
}
}
Aber das ist ja noch das einfache....
Ich würde das gerne iterativ machen und hab mir das jetzt erstmal mit Stift und Papier
überlegt.... nur irgendwie komm ich zu keinem Ergebnis da ich keine Intervalle erkennen kann.
Ich hab das mal jetzt auf dem Papier mit 6 Scheiben durchlaufen aber die Züge sind immer
anders....(Schwierig zu erklären) jedenfalls wüsste ich nicht wie ich das ordentlich in
Schleifen packen könnte damit es immer funktioniert.