Könnte mir jemand helfen, folgende Funktion zu verstehen? Irgendwie hakts da gerade gewaltig bei mir.
Code: Alles auswählen
def towers_of_hanoi(n_rings, from_pos, helper_space, to_pos):
if n_rings == 1:
print(f"Move from {from_pos} to {to_pos}")
pass
else:
towers_of_hanoi(n_rings - 1, from_pos, to_pos, helper_space)
print(f"Move from {from_pos} to {to_pos}")
towers_of_hanoi(n_rings - 1, helper_space, from_pos, to_pos)
towers_of_hanoi(3, "A", "B", "C")
- 2, A, C, B
- 1, A, B, C
"Move from A to C"
Nun aber verliere ich den Faden...
- 2, A, C, B ???
...
Ich habe mir das ganze schon im Debugger angesehen, aber komme einfach nicht dahinter.
Endgültige Ausgabe ist:
Code: Alles auswählen
Move from A to C
Move from A to B
Move from C to B
Move from A to C
Move from B to A
Move from B to C
Move from A to C