Informatik, kann einer für Idioten erklären, warum die fibonaci Folge das Treppenproblem löst?

1 Antwort

Jain, die Anzahl der Kombinationen ergibt sich aus der Fibonacci Folge.

Der Rekursionsboden ist der Fall, wenn du auf der letzten bzw vorletzten Stufe stehst. Das ist ein einfacheres Problem, da es nur eine resp. 2 Möglichkeiten zur Besteigung der Treppe gibt.

Die Rekursion ergibt sich aus folgender Erkenntniss: Wenn du auf der vor-vorletzten Stufe stehst, kannst du entweder auf die vor letzte oder letzte Stufe steigen. D.h. du hast insgesamt count(letzte) + count(vorlezte) Möglichkeiten auf die Treppe zu kommen. Und das kannst du jetzt so weiterspinnen, bis du "vor der Treppe" angekommen bist.

Und das entspricht der rekursiven Definition der Fibonacci Folge: neue Zahl = letzte Zahl + vorletzte Zahl


procoder42  23.10.2021, 17:22

Nachtrag: Dein Code framed das Problem ein wenig anders (weil du ja alle Wege enumerierst), da du quasi einen Baum aller Kombinationen aufbaust, bis du beim Rekursionsende n=0 angekommen bist.

Wenn es nur um die Anzahl der Möglichkeiten ginge, würde ich deine Lösung als äußerst ineffizient betrachten. Hier käme die Fibonacci Reihe ins Spiel, weil wir analog mittels Dynamischer Programmierunt in linearer Zeit + konstantem Speicher eine Lösung finden können.

Die eigentlichen Kombinationen bekommst du über die Fibonacci Reihe aber nicht raus, daher das "Jain" in der Antwort

0