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

Informatiker Board » Themengebiete » Praktische Informatik » Algorithmen » Verständnisproblem Mastertheorem » 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 Verständnisproblem Mastertheorem
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
MaRiee
Grünschnabel


Dabei seit: 17.10.2017
Beiträge: 1

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

Meine Frage:
Hallo,

ich habe folgende Aufgabe zu lösen:

Gegeben ist die folgende Rekursionsgleichung T:

T(n) = 3n² (n/log 2(8)) + 16T (n/2)

Bestimme jeweils eine exakte Schranke für das Verhalten von T. In dem Fall, in denen das Master-Theorem anwendbar ist, beschreibe dessen Anwendung zum Finden von f.

Dazu habe ich folgende Fragen:
(1) was ist eine Rekursionsgleichung
(2) Wie bestimme ich exakt die Schranke
(3) mir ist immer noch die Bedeutung bzw. Interpretation vom Mastertheorem unschlüssig
(4) Wann ist es nicht anwendbar

Meine Ideen:
Das Mastertheorem ist definiert als T(n) = aT (a/b) + f(n).
a... Anzahl der Teilprombleme
b... Faktor, um welchen das Problem verringert wird

Mir fehlt komplett der Ansatz :-(
17.10.2017 22:18 MaRiee ist offline E-Mail an MaRiee senden Beiträge von MaRiee suchen Nehmen Sie MaRiee in Ihre Freundesliste auf
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

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

Hallo MaRiee,

hier ein paar infos, die vielleicht weiter helfen. Da der Stoff schon einige Zeit her ist und ich mich noch nicht wieder vollständig eingelesen habe, bitte alles kritisch hinterfragen.

(1) Eine Rekursionsgleichung ist eine, die sich selbst wieder referenziert. Hier zum Beispiel hängt T(n) wiederum vom T(n) ab, da T(n) = ... + 16T(n/2)
(2) Daraus ergibt sich die exakte Bestimmung der Komplexität, indem du 16T(n/2) "expandierst". D.h. du wendest die Definition von T auf n/2 an und rechnest das Ergebnis aus.

Am Beispiel:
[latex]<br />
T(n) & = & 3n^2 (\frac{n}{log_28}) + 16T (\frac{n}{2}) <br />
& = & 3n^2 (\frac{n}{3}) + 16T (\frac{n}{2}) <br />
& = & n^2 \cdot n + 16T (\frac{n}{2}) <br />
& = & n^3 + 16T (\frac{n}{2}) <br />
& = & n^3 + 16\left(\left(\frac{n}{2}\right)^3 + 16T\left(\frac{\frac{n}{2}}{2}\right)\right)<br />
& = & n^3 + 16\left(\frac{n^3}{8} + 16T\left(\frac{n}{4}\right)\right)<br />
& = & n^3 + 2n^3 + 16^2T\left(\frac{n}{4}\right)<br />
& = & 3n^3 + 16^2T\left(\frac{n}{4}\right) \quad \dots \quad  T \text{ weiter expandieren und auf k "Expansionen" verallgemeinern}<br />
[/latex]

Da wir mit jedem Rekursionsschritt unsere Problemgröße halbieren müsste k maximal log2(n) groß sein. Damit können wir, so nehme ich momentan an, die obige Formel so verallgemeinern, dass wir die Komplexität in Abhängigkeit von n abschätzen können.

(3) Das Mastertheorem ist, soweit ich michr recht erinnere, nur eine Abkürzung. D.h. wir brauchen uns, wenn wir einen zutreffenden Fall für das Mastertheorem finden, die obige "expansion" nicht machen um die Laufzeit abzuschätzen, sondern können einfach nur das Mastertheorem anwenden und bekommen unsere Laufzeit. In die Details habe ich leider nicht geschaut.

(4) Kann ich leider aktuell nicht beantworten.

Besten Gruß,

Karlito
18.10.2017 17:02 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Algorithmen » Verständnisproblem Mastertheorem