Ich lese den Code mein Freund schrieb für seinen Turm der Hanoi-Lösung. Aber es ist schwer für mich herauszufinden, was sein Code macht, da ich seine Init-Konfiguration und Endkonfiguration nicht verstehe.turm von hanoi anfängliche konfiguration?
def T(init, final):
if len(init) == 0:
return
if init[0] == final[0]:
T(init[1:], final[1:])
else:
fro = init[0]
to = final[0]
spare = other(init[0], final[0])
ic = spare * (len(init) - 1)
T(init[1:], ic)
print("move from %s to %s " % (fro, to))
T(ic, final[1:])
def other(char1, char2):
towers = "ABC"
towers = towers.replace(char1, "")
towers = towers.replace(char2, "")
return towers
init = "ABCBA"
final = "BCBAC"
T(init, final)
Hier hat er init = "ABCBA" und final = "BCBAC". Der Code funktioniert gut, aber ich verstehe nicht, warum er das macht.
Jede Hilfe wird geschätzt.