Hanoi

Status
Nicht offen für weitere Antworten.

DWetzler

Mitglied
Hallo, hat jemand vielleicht eine Ahnung, wo ich eine lösung für den Turm von hanoi, für 4 Türme finde. Habe schon sehr viel im netz gesucht und überall stand dass es wohl sehr viele Lösungen für den Turm von hanoi im Netz gibt, aber leider habe ich noch keine Lösung mit 4 Türmen gefunden. Suche jetzt verzweifelt nach einer rekursiven oder iterativen Lösung. Hat jemand vielleicht auch eine programmierte Lösung von Buneman( soll angeblich 1980 einen sehr einfache iterative Lösung erstellt haben) ? Im voraus Vielen Dank für eure Hilfe!
 

Leroy42

Top Contributor
Hallo!

Ich weiß nicht, ob du es warst, der dieses Thema hier vor ein paar Wochen angeschnitten
hat, aber es interessierte mich auch.

Ich habe daraufhin ein altes Java-Programm genommen, daß die Lösung für drei Stangen
anzeigt und es erlaubt die Türme vom User umzubauen und dieses erweitert.

Da ich nunmal mathematisch angehaucht bin ( :cool: ) habe ich das Programm gleich auf
N-Stangen zum Selbstbewegen erweitert. Nachdem ich ein bischen herumgespielt habe
und mir eine gewisse Systematik aufgefallen ist, habe ich einen Backtracking-Algorithmus
ermittelt der den Rechner minimale Lösungen für jede Anzahl von Stangen finden läßt.

Nachdem sich herausgestellt hatte, daß der Aufwand, bei Erhöhung der Stangenanzahl,
exponentiell anwächst (hätte ich mir ja denken können :oops: ), mußte ich noch eine
Unmenge an Baumbeschneidungen einbauen.

Wenn du willst, kann ich dir das Programm ja mal schicken; Zum Studium des Verhaltens
bei allgemeiner Anzahl von Stangen ist es sehr hilfreich (Du kannst auswählen, ob
du die Lösungsfindung mitverfolgen willst; mit einem Slider die Darstellungsgeschwindigkeit
wählen, oder die Berechnung ohne Anzeige laufen lassen und dann, Schritt für Schritt,
den Umbau beobachten).

Aber ein Hinweis:

[schild=5 fontcolor=000000 shadowcolor=C0C0C0 shieldshadow=1]Schau ja nicht zu tief in den Quelltext![/schild]

Dieses Programm entspricht nun absolut nicht meinem sonstigen Programmierstil,
aber, da es ja nur für mich ist, war mir Geschwindigkeit wichtiger als Erkenntnisse
aus Jahrzehnten Softwareengineering. :cool:
 

DWetzler

Mitglied
Ne, ich war das nicht der schon mal das Thema angeschnitten hatte. Aber wäre sehr nett, wenn du mir dein Programm mal schicken würdest. Glaube das mir das sehr weiterhelfen könnte! Nochmal vielen Dank für die Hilfe!
 

Leroy42

Top Contributor
Hier, wie versprochen, die Programmversion, die auch optimale Lösungen für
mehr als 3 Stangen berechnet.

Hanoi.jar

Da ich das Programm nur für den Privatgebrauch geschrieben habe,
ist der Umgang nicht gerade intuitiv; darum Kurzinfo.

1. Einstellung der Anzahl Stangen/Scheiben
2. Reset drücken (setzt auch den Fokus auf's Panel für den KeyListener)
3. Die Tasten "1", "2", ... stehen für die Auswahl der Stange (von links gezählt)
4. Den Slider ganz nach unten ziehen (Maximalgeschwindigkeit)
5. Den Button "Nicht zeigen" drücken (Button ändert Label in "Zeigen")
6. Den Button "Lösen" drücken.
7. Sobald der Button nicht mehr den Text "STOP" zeigt, ist die Berechnung beenden
8. Den Button "Zeigen" drücken
9. Mit dem Mausrad nach oben scrollen um in die Startposition zu gehen.
10. Jeder "Klick" des Mausrads nach unten zeigt einen Lösungsschritt.

Hier die Sourcen; wie gesagt: Nicht zu tief reinschauen

Hanoi.zip
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
wuerg Türme von Hanoi Iterativ Java Basics - Anfänger-Themen 8
S Türme von Hanoi Java Basics - Anfänger-Themen 36
B Türme von Hanoi mit einer beliebigen aber gültigen Eingabe lösen Java Basics - Anfänger-Themen 5
P Hanoi Java Basics - Anfänger-Themen 1
S Rekursion Rückgabe - Türme von Hanoi Java Basics - Anfänger-Themen 16
K Türme von Hanoi - Rekursiv. Java Basics - Anfänger-Themen 1
C Türme von Hanoi - Anzhal der Züge Java Basics - Anfänger-Themen 1
D Türme von Hanoi in "Java ist auch eine Insel" Java Basics - Anfänger-Themen 4
R Hanoi rekursiv lösen Problem Java Basics - Anfänger-Themen 1
D Türme von hanoi Java Basics - Anfänger-Themen 7
B Türme von Hanoi ausgabe Java Basics - Anfänger-Themen 2
shiroX OOP Türme von Hanoi - einfache grafische Ausgabe Java Basics - Anfänger-Themen 2
T Türme von Hanoi Java Basics - Anfänger-Themen 9
E Hanoi-Varianten rekursiv Java Basics - Anfänger-Themen 2
D > 3 Türme von Hanoi Java Basics - Anfänger-Themen 11
P Hanoi rekursiv zu iterativ umbauen Java Basics - Anfänger-Themen 20
J Erste Schritte türme von hanoi verständnisprobleme Java Basics - Anfänger-Themen 6
F Methoden Hanoi - Anzahl der Bewegungen Java Basics - Anfänger-Themen 8
B Türme von Hanoi - Iterator Java Basics - Anfänger-Themen 50
R Türme von Hanoi mit beliebiger Startposition Java Basics - Anfänger-Themen 5
kulturfenster Probleme mit Hanoi Java Basics - Anfänger-Themen 3
G Verständnisproblem Türme von Hanoi Java Basics - Anfänger-Themen 4
B Kann Quellcode von "Hanoi" nicht verstehen. Bitte Java Basics - Anfänger-Themen 4
kulturfenster Hanoi Java Basics - Anfänger-Themen 28
X Türme von Hanoi - Iterativ Java Basics - Anfänger-Themen 8
L Hanoi II : Rekursiviker gesucht Java Basics - Anfänger-Themen 22
B Türme von Hanoi: aktuelle Belegungszustände ausgeben? Java Basics - Anfänger-Themen 2
T Rekursiver Algorithmus: Türme von Hanoi Java Basics - Anfänger-Themen 8
H Quicksort und Rekursiv: Türme von Hanoi Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben