Anwendung beim Programmieren
einfaches Beispiel
Die Zahl n! = n(n-1)(n-2)...1 ("n Fakultät") kann man für n > 0
berechnen
als n! = n (n-1)! . (Dabei wird 0! = 1 gesetzt. )
In dem folgenden Experiment wird der Ablauf eines rekursiven Programms zur
Berechnung von n! simuliert.
Beobachte den Stack.
raffinierteres Beispiel
Die Binomialkoeffizienten sind für definiert als
Durch Nachrechnen erkennt man, dass für die Beziehung
gilt.
Das folgende rekursive Programm nutzt diese Beziehung. Es enthält jetzt zwei
rekursive Aufrufe.
Teste
n=3, k=2
n=5, k=3
...
Dank
Gib Werte für n und k ein.
Bewertung
Rekursive Programme bieten sich für viele Problemstellungen an.
Häufig sind sie elegant und kurz. Aber Vorsicht: der
Rechenaufwand kann unerwartet hoch sein.
Das rekursive Programm für die Binomialkoeffizienten ist elegant, weil es weder
Multiplikationen noch Divisionen durchführt. Dafür machte es aber sehr viele
Additionen.