Was ist "billiger": Vertauschen oder noch eine Rek
Verfasst: Freitag 25. November 2005, 22:08
Was ist "günstiger"?
Im ersten Fall hab ich eine "Vertauschung" drin:
a, b = b, a
Ich weiß, dass da nichts vertauscht wird, sondern die Variablen a und b neu erstellt werden.
Oder ist das hier klüger?
Anstatt zu "Vertauschen" wird ggT einfach mit vertauschten Werten aufgerufen. D.h. ich mach eine Rekursion mehr, bis ich zu dem Schritt komme, den ich gleich nach der "Vertauschung" im obigen Beispiel habe.
Im ersten Fall hab ich eine "Vertauschung" drin:
a, b = b, a
Ich weiß, dass da nichts vertauscht wird, sondern die Variablen a und b neu erstellt werden.
Code: Alles auswählen
def ggT(a,b):
if a == b:
return a
if a > b:
a,b = b,a
return ggT(a,b-a)
Anstatt zu "Vertauschen" wird ggT einfach mit vertauschten Werten aufgerufen. D.h. ich mach eine Rekursion mehr, bis ich zu dem Schritt komme, den ich gleich nach der "Vertauschung" im obigen Beispiel habe.
Code: Alles auswählen
def ggT(a,b):
if a == b:
return a
if a > b:
return(b, a)
return ggT(a, b-a)