www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Komplexität & Berechenbarkeit" - Aufwandsabschätzung Fibonacci
Aufwandsabschätzung Fibonacci < Komplex. & Berechnb. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Komplexität & Berechenbarkeit"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Aufwandsabschätzung Fibonacci: Tipp
Status: (Frage) überfällig Status 
Datum: 20:39 Di 30.11.2010
Autor: iMod109

Aufgabe
Bestimme die Laufzeit der folgenden Rekurrenzgleichung:
T(n)=T(n-1)+T(n-2) mit T(1) = T(2)= 1

Hallo zusammen,
ich habe einen naiven rekursiven Algorithmus, der die Fibonaccizahlen rekursiv berechnet (ist sehr ineffizient, aber so gewollt).
Jetzt möchte ich die Laufzeit abschätzen. Das Master-Theorem ist hier nicht anwendbar. Weitere Möglichkeit wäre abschätzen und per Induktion beweisen... Dabei wird die Lösung aber geraten und das widerstrebt mir etwas.

Gibt es eine Möglichkeit aus der Rekurrenzgleichung auf die Laufzeit zu kommen( [mm] O(2^{n}))? [/mm]

Dies ist eine sehr grobe Abschätzung aber für meine Zwecke (Einsatz im Schulunterricht) sinnvoll.
Ich habe die Abschätzung getroffen, dass T(n)=2T(n-1) ist. Dann wird aus einem Ausdruck T(n) zwei nämlich 2*T(n-1). Dieser Ausdruck wird zu vier Ausdrücken etc. bis man nach n-(n-2) Schritten terminiert. Daraus habe ich dann grob [mm] 2^{n} [/mm] abgeleitet.

So ganz glücklich bin ich damit nicht, deshalb meine Frage. Danke für eure Hilfe.

        
Bezug
Aufwandsabschätzung Fibonacci: Antwort
Status: (Antwort) fertig Status 
Datum: 18:58 Mi 01.12.2010
Autor: felixf

Moin!

> Bestimme die Laufzeit der folgenden Rekurrenzgleichung:
>  T(n)=T(n-1)+T(n-2) mit T(1) = T(2)= 1
>  Hallo zusammen,
>  ich habe einen naiven rekursiven Algorithmus, der die
> Fibonaccizahlen rekursiv berechnet (ist sehr ineffizient,
> aber so gewollt).
>
>  Jetzt möchte ich die Laufzeit abschätzen. Das
> Master-Theorem ist hier nicht anwendbar. Weitere
> Möglichkeit wäre abschätzen und per Induktion
> beweisen... Dabei wird die Lösung aber geraten und das
> widerstrebt mir etwas.
>  
> Gibt es eine Möglichkeit aus der Rekurrenzgleichung auf
> die Laufzeit zu kommen( [mm]O(2^{n}))?[/mm]

Also streng genommen ist die Laufzeit [mm] $\Theta(\phi^n)$, [/mm] wobei [mm] $\phi [/mm] = [mm] \tfrac{1 + \sqrt{5}}{2} \approx [/mm] 1.618$ ist. Da [mm] $2^n \not\in \Theta(\phi^n)$ [/mm] ist, ist [mm] $O(2^n)$ [/mm] also zu grob abgeschaetzt :-)

(Wobei beides in [mm] $e^{O(1) n}$ [/mm] liegt.)

> Dies ist eine sehr grobe Abschätzung aber für meine
> Zwecke (Einsatz im Schulunterricht) sinnvoll.
>  Ich habe die Abschätzung getroffen, dass T(n)=2T(n-1)
> ist.

Du meinst $T(n) [mm] \le [/mm] 2 T(n - 1)$, oder?

> Dann wird aus einem Ausdruck T(n) zwei nämlich
> 2*T(n-1). Dieser Ausdruck wird zu vier Ausdrücken etc. bis
> man nach n-(n-2) Schritten terminiert. Daraus habe ich dann
> grob [mm]2^{n}[/mm] abgeleitet.

Ja, das geht.

> So ganz glücklich bin ich damit nicht, deshalb meine
> Frage.

Eine Moeglichkeit ist, erst die Rekurrenzgleichung zu loesen. Dazu schaut man sich das char. Polynom [mm] $x^2 [/mm] - x - 1$ dazu an (welches von der Gleichung [mm] $x_{n+2} [/mm] - [mm] x_{n+1} [/mm] - [mm] x_n [/mm] = 0$ kommt), bestimmt die Nullstellen, die hier [mm] $\phi [/mm] = [mm] \frac{1 + \sqrt{5}}{2}$ [/mm] und [mm] $\psi [/mm] = [mm] \frac{1 - \sqrt{5}}{2}$ [/mm] sind, und kann dann $A, B [mm] \in \IR$ [/mm] bestimmen mit [mm] $a_n [/mm] = A [mm] \phi^n [/mm] + B [mm] \psi^n$ [/mm] fuer alle $n$.

Da [mm] $\psi \le \phi$ [/mm] sieht man sofort, dass [mm] $a_n \le [/mm] 2 [mm] \max\{ A, B \} \phi^n$ [/mm] ist, und mit [mm] $\phi \le [/mm] 2$ bekommt man somit [mm] $a_n \in O(2^n)$. [/mm]

Jetzt muss man aber begruenden, warum man die Rekurrenzgleichung so loesen darf, was das ganze nur bedingt einfacher macht :-) Dafuer wird jedoch alles brav explizit abgeschaetzt und nichts "geraten" ;-)

LG Felix


Bezug
        
Bezug
Aufwandsabschätzung Fibonacci: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:20 Fr 31.12.2010
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Komplexität & Berechenbarkeit"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]