Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » dynamische Programmierung fib(n) » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen dynamische Programmierung fib(n)
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
JROppenheimer
Foren As


Dabei seit: 17.11.2007
Beiträge: 94

dynamische Programmierung fib(n) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

So, jetzt wo D&C erfolgreich abgehakt ist, quäle ich mich mit dynamischer Programmierung.

Gerade jetzt mit der FibonacciFolge.

Die rekursive Implementierung (simpelste) hat eine Laufzeit, die ähnlich wie die FibinacciFolge selbst steigt, sowas wie T(n) in O(1/sqrt(5) * (1,681...)^n)

Wenn man aber die ganzen doppelten Rekursionsaufrufe zwischenspeichert, kann man lineare Laufzeit erreichen O(n).
Das hab ich schon verstanden, und das bekomm ich denke ich auch recht schnell hin.

Ich soll jedoch in der Aufgabe mit Platzbedarf O(1) arbeiten. DAs heisst doch konstant, und nicht abhängig von n.
Wenn ich aber fib(n) implementieren will muss ich doch n-1 rekursive Zwischenschritte speichern, oder? Wie kann ich dann bei konstantem PLatz bleiben!?

__________________
I'm 71% Megatron!
01.02.2008 11:52 JROppenheimer ist offline E-Mail an JROppenheimer senden Beiträge von JROppenheimer suchen Nehmen Sie JROppenheimer in Ihre Freundesliste auf MSN Passport-Profil von JROppenheimer anzeigen
Tobias
Routinier


Dabei seit: 18.09.2006
Beiträge: 324

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Eigentlich brauchst du immer nur die zwei letzten Ergebnisse. Iterativ hast du es dann leicht mit O(1) Platzbedarf implementiert.
01.02.2008 14:46 Tobias ist offline E-Mail an Tobias senden Beiträge von Tobias suchen Nehmen Sie Tobias in Ihre Freundesliste auf
JROppenheimer
Foren As


Dabei seit: 17.11.2007
Beiträge: 94

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

ja daran dachte ich auch. aber irgendwie ist es doch witzlos, wenn ich um da zu lösen aus der rekursion ne iteration mache.

heisst dynamisch programmierung net IMMER rekursiv?!

__________________
I'm 71% Megatron!
01.02.2008 20:55 JROppenheimer ist offline E-Mail an JROppenheimer senden Beiträge von JROppenheimer suchen Nehmen Sie JROppenheimer in Ihre Freundesliste auf MSN Passport-Profil von JROppenheimer anzeigen
Tobias
Routinier


Dabei seit: 18.09.2006
Beiträge: 324

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Nein, im Gegenteil: Dynamische Programmierung heißt Rekursionen vermeiden.
http://de.wikipedia.org/wiki/Dynamische_Programmierung
01.02.2008 21:19 Tobias ist offline E-Mail an Tobias senden Beiträge von Tobias suchen Nehmen Sie Tobias in Ihre Freundesliste auf
JROppenheimer
Foren As


Dabei seit: 17.11.2007
Beiträge: 94

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Da steht zwar, dass kostspielige rekursionen vermieden werden sollen, durch memoisation, aber Fib kann dynamisch immernoch rekursiv gelöst werden, nur ist das dann mit dem Platzbedarf bissie kritisch bei O(1), oder?

Mit Memoisation ist die Laufzeit linear, aber halt auch linearer Platzbedarf, wenn ich das so überblicke.

__________________
I'm 71% Megatron!
01.02.2008 21:50 JROppenheimer ist offline E-Mail an JROppenheimer senden Beiträge von JROppenheimer suchen Nehmen Sie JROppenheimer in Ihre Freundesliste auf MSN Passport-Profil von JROppenheimer anzeigen
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » dynamische Programmierung fib(n)