Heim  >  Artikel  >  Backend-Entwicklung  >  Implementierung der Tower of Hanoi-Methode unter Python

Implementierung der Tower of Hanoi-Methode unter Python

高洛峰
高洛峰Original
2017-03-27 16:37:441734Durchsuche

Der Turm von Hanoi ist ein Lernspielzeug aus einer alten Legende in Indien. Die Bewegung des Turms von Hanoi kann auch als rekursive Funktion angesehen werden.

Wir nummerieren die Spalten a, b, c. Das Verschieben aller Festplatten von a nach c kann wie folgt beschrieben werden:
Wenn a nur eine Festplatte hat, kann diese direkt nach c verschoben werden Wenn a über N Festplatten verfügt, kann davon ausgegangen werden, dass a über 1 Festplatte (Gehäuse) + (N-1) Festplatten verfügt. Zuerst müssen Sie (N-1) Festplatten nach b verschieben und dann den letzten Teil eines Moves verschieben eine Scheibe nach c und dann (N-1) Scheiben von b nach c verschieben.
Bitte schreiben Sie eine Funktion, die bei gegebener Eingabe n, a, b, c die Bewegungsschritte ausgibt:
move(n, a, b, c)
Zum Beispiel geben Sie move(2 , 'A', 'B', 'C'), ausdrucken:
A –>
Turm von Hanoi: Der Turm von Hanoi (auch bekannt als der Turm von Hanoi) ist ein Lernspielzeug, das auf einer alten Legende in Indien basiert. Als Brahma die Welt erschuf, schuf er drei Diamantsäulen. Auf einer Säule wurden 64 Goldscheiben in der Reihenfolge ihrer Größe von unten nach oben gestapelt. Brahma befahl dem Brahmin, die Scheiben auf einer anderen Säule in der Reihenfolge ihrer Größe von unten neu anzuordnen. Es ist auch festgelegt, dass die Scheibe auf der kleinen Scheibe nicht vergrößert werden kann und jeweils nur eine Scheibe zwischen den drei Säulen bewegt werden kann.

Der Code ist wie folgt implementiert:

Das obige ist der detaillierte Inhalt vonImplementierung der Tower of Hanoi-Methode unter Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn