Laufzeitanalyse < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
|
Aufgabe | Was für eine Laufzeit für n ergibt sich aus: $T(n) = [mm] 3^{(\log_2 n)} \cdot [/mm] T(1) + [mm] \sum_{k=0}^{\log_2 n} 3^k \cdot [/mm] n$ |
Die in der Aufgabenstellung erhaltene feste Funktion habe ich durch Substitution erhalten. Der kommende Weg ist mir klar, ich vermute es hängt besonders an der mat. Grundlage. So weiß ich leider nicht, wie ich aus der Aufgabenstellung jetzt die Laufzeit für n korrekt lese. Es gilt ja weiter, dass:
$T(n) = [mm] 3^{(\log_2 n)} \cdot [/mm] 10 + [mm] \sum_{k=0}^{\log_2 n} 3^k \cdot [/mm] n$ wobei $T(1) = 10$ per Definition gegeben ist.
Die Summenformel lässt sich ausschreiben als:
[mm] $\frac{1}{2}(3^{\log_2 n} [/mm] - 1) [mm] \cdot [/mm] n$
betrachte ich also den gesamten Ausdruck:
$10 [mm] \cdot 3^{(\log_2 n)} [/mm] + [mm] \frac{1}{2}n(3^{\log_2 n} [/mm] - 1)$
erhalte ich die mögliche Laufzeit O. Aber in eben diesem Fall weiß ich nicht wie ich mit $10 [mm] \cdot 3^{(\log_2 n)} [/mm] + [mm] \frac{1}{2}n(3^{\log_2 n} [/mm] - 1)$ umgehen soll.
Vielen Dank für Eure Lösung.
Anmerkung: Ich benötige diese Lösung nicht für ein Übungsblatt sondern bereite mich gerade auf eine Klausur vor und freue mich daher über eine konkrete Lösung bezüglich Potenzen die [mm] $\log_2 [/mm] n$ enthalten (Betrachte ich z.B. [mm] $2^{\log_2(n)}$ [/mm] ergibt da so ein schönes: $n$). Vielen Dank!
Gruß,
Chris
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 17:59 Fr 03.07.2015 | Autor: | M.Rex |
Hallo
> Was für eine Laufzeit für n ergibt sich aus: [mm]T(n) = 3^{(\log_2 n)} \cdot T(1) + \sum_{k=0}^{\log_2 n} 3^k \cdot n[/mm]
Kannst du mal deine Obergrenze der Summe überprüfen, [mm] \log_{2}(n) [/mm] ist für fast alle n keine ganze Zahl, aber die Summe kannst du meiner Meinung nach nur "über ganze Zahlen laufen lassen"
>
> Die in der Aufgabenstellung erhaltene feste Funktion habe
> ich durch Substitution erhalten. Der kommende Weg ist mir
> klar, ich vermute es hängt besonders an der mat.
> Grundlage. So weiß ich leider nicht, wie ich aus der
> Aufgabenstellung jetzt die Laufzeit für n korrekt lese. Es
> gilt ja weiter, dass:
>
> [mm]T(n) = 3^{(\log_2 n)} \cdot 10 + \sum_{k=0}^{\log_2 n} 3^k \cdot n[/mm]
> wobei [mm]T(1) = 10[/mm] per Definition gegeben ist.
> Die Summenformel lässt sich ausschreiben als:
> [mm]\frac{1}{2}(3^{\log_2 n} - 1) \cdot n[/mm]
> betrachte ich also
> den gesamten Ausdruck:
> [mm]10 \cdot 3^{(\log_2 n)} + \frac{1}{2}n(3^{\log_2 n} - 1)[/mm]
>
> erhalte ich die mögliche Laufzeit O. Aber in eben diesem
> Fall weiß ich nicht wie ich mit [mm]10 \cdot 3^{(\log_2 n)} + \frac{1}{2}n(3^{\log_2 n} - 1)[/mm]
> umgehen soll.
Die Schritte sind soweit denke ich erstmal ok, sofern die Summe ok ist, was meiner Meinung nach nicht zutrifft, wie oben beschrieben.
Marius
|
|
|
|
|
Hallo Marius,
danke für deine Anfrage. Du hast natürlich recht! Ich habe hier definitiv geschlampert.
1. $n$ ist eine Zweierpotenz
2. [mm] $\log_2(n)$ [/mm] heißt in meinem Post natürlich immer "aufgerundet": [mm] $\left\lceil\log_2(n)\right\rceil$.
[/mm]
Hätte ich definitiv anmerken müssen - sorry!
Leider weiß ich deswegen natürlich immer noch nicht weiter. Eine Idee?
Grüße,
Chris
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:20 So 05.07.2015 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:44 Do 09.07.2015 | Autor: | Chrizzldi |
Huch, ich hab gar nicht gemerkt, dass ich die Zeit auf 24h angegeben - bzw. mit einer neuen Zwischenfrage eine neue Zeit angeben - habe.
Die Frage ist natürlich immer noch aktuell und ich freue mich über Hilfe!
Danke schön
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:20 Sa 11.07.2015 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|