0 Daumen
559 Aufrufe


ich habe eine kurze Frage und zwar liegt nlog(n)n\cdot \log(n) wirklich in Θ(n3)\Theta(n^3)?
Und wenn ja, warum?

Und was ist wenn wir nlog(n4)n\cdot \log(n^4) haben? In welcher Theta-Notation liegt diese dann?

Avatar von

1 Antwort

0 Daumen
 
Beste Antwort

Hallo :-)

Ich glaube du meinst nlog(n)Θ(n3)n\cdot \log(n)\in \Theta(n^3). Um das zu zeigen, musst du zeigen:

1.) nlog(n)Ω(n3)n\cdot \log(n)\in \Omega(n^3) und

2.) nlog(n)O(n3)n\cdot \log(n)\in \mathcal{O}(n^3)

Aussage 1.) ist aber falsch und Aussage 2.) ist richtig, sodass nur nlog(n)O(n3)n\cdot \log(n)\in \mathcal{O}(n^3) gilt und nlog(n)Ω(n3)n\cdot \log(n)\notin \Omega(n^3), sodass auch nlog(n)O(n3)Ω(n3)=Θ(n3)n\cdot \log(n)\notin \mathcal{O}(n^3)\cap \Omega(n^3) = \Theta(n^3).


Für nlog(n4)=4nlog(n)n\cdot \log(n^4)=4\cdot n\cdot \log(n) zählt genau dasselbe, wie oben.

Avatar von 15 k

Oh, jetzt ist mir einiges klar. Ich Danke Dir für die ausführliche und schöne Erklärung! :-D

Eine Frage habe ich noch:
Wie zeigt man sowas eigentlich bzw. rechnet denn da? Mit Master-Theorem?

Zum Beispiel habe ich diese Aufgabe hier gegeben, aber ich weiß leider nicht wie man das hier genau beweisen kann:

blob.png

Da musst du auch nur wieder die Definitionen nachprüfen:

Es sei g : NRg: \mathbb{N}\rightarrow \mathbb{R}.

1.)O(g) : ={f :  NR :  α>0 n0N nn0 :  0f(n)αg(n)0f(n) und f(n)αg(n)}1.)\quad \mathcal{O}(g):=\{f:\ \mathbb{N}\rightarrow \mathbb{R}:\ \exists \alpha>0 \ \exists n_0 \in \mathbb{N} \ \forall n\geq n_0:\ \underbrace{0\leq f(n) \leq \alpha \cdot g(n)}_{0\leq f(n) \text{ und } f(n)\leq \alpha\cdot g(n) } \}

2.)Ω(g) : ={f :  NR :  β>0 n1N nn1 :  0βg(n)f(n)0βg(n) und βg(n)f(n)}2.)\quad \Omega(g):=\{f:\ \mathbb{N}\rightarrow \mathbb{R}:\ \exists \beta>0 \ \exists n_1 \in \mathbb{N} \ \forall n\geq n_1:\ \underbrace{0\leq \beta \cdot g(n) \leq f(n)}_{0\leq \beta\cdot g(n) \text{ und } \beta\cdot g(n)\leq f(n) } \}

3.)Θ(g) : =O(g)Ω(g)3.)\quad \Theta(g):=\mathcal{O}(g)\cap \Omega(g)


Zu 1.). Finde also ein α>0\alpha>0 und eine Stelle n0Nn_0\in\mathbb{N}, sodass für alle nn0n\geq n_0 die Ungleichung 0nlog3(n2)αn(log3(n))20\leq n\cdot \log_3(n^2)\leq \alpha\cdot n\cdot (\log_3(n))^2 gilt. Diese Parameter kann man beim bloßen Versuch der Abschätzung einsehen:

0n1log3(n)0\stackrel{n\geq 1}{\leq} \log_3(n)

Daraus folgt

0n1nlog3(n2)=2nlog3(n)1, n3n32nlog3(n)log3(n)=2n(log3(n))20\stackrel{n\geq 1}{\leq} n\cdot \log_3(n^2)=2\cdot n\cdot \underbrace{\log_3(n)}_{\geq 1,\space \forall n\geq 3}\stackrel{n\geq 3}{\leq }2\cdot n\cdot \log_3(n)\cdot \log_3(n)=2\cdot n\cdot (\log_3(n))^2

Also gilt mit α=2\alpha=2 und n0=3n_0=3 für alle n3n\geq 3 die Abschätzung

0nlog3(n2)αn(log3(n))20\leq n\cdot \log_3(n^2)\leq \alpha\cdot n\cdot (\log_3(n))^2,

sodass nlog3(n2)O(n(log3(n))2)n\cdot \log_3(n^2)\in \mathcal{O}(n\cdot (\log_3(n))^2) gilt.


Zu 2.). Diese Aussage ist falsch. Um das zu zeigen, muss man also die Aussage

nlog3(n2)Ω(n(log3(n))2)n\cdot \log_3(n^2)\notin \Omega(n\cdot (\log_3(n))^2) betrachten. In Quantorenschreibweise sieht das so aus:

β>0 n1N nn1 :  0>βn(log3(n))2(1) oder βn(log3(n))2>nlog3(n2)(2) \forall \beta>0 \ \forall n_1 \in \mathbb{N} \ \exists n\geq n_1:\ \underbrace{0> \beta\cdot n\cdot (\log_3(n))^2}_{(1)} \text{ oder } \underbrace{\beta\cdot n\cdot (\log_3(n))^2> n\cdot \log_3(n^2)}_{(2)}

(1) ist offensichtlich immer falsch.

Also muss man (2) zeigen, sodass diese Oder-Aussage wahr ist. Finde also in Abhängigkeit von β>0\beta>0 und n0Nn_0\in \mathbb{N} ein nn0n\geq n_0, sodass Abschätzung (2) gilt.

Dafür probiert man etwas rum:

βn(log3(n))2>nlog3(n2)\beta\cdot n\cdot (\log_3(n))^2> n\cdot \log_3(n^2).

Zu kompliziert. Ich betrachte stattdessen:

β(log3(n))2>log3(n2)=2log3(n)\beta\cdot (\log_3(n))^2> \log_3(n^2)=2\cdot \log_3(n).

Immernoch zu kompliziert. Also:

βlog3(n)>2\beta\cdot \log_3(n)> 2  bzw. log3(n)>2β\log_3(n)>\frac{2}{\beta}   bzw.  n>32βn>3^{\frac{2}{\beta}}

Das letzte sieht sehr vielversprechend aus. Um jetzt noch β>0\beta>0 und n0Nn_0\in \mathbb{N} ins Boot zu holen, wähle ich mein finales nNn\in \mathbb{N} folgendermaßen:

n>max(β,n0,32β)n>\max\left(\beta, n_0,3^{\frac{2}{\beta}}\right). Dann ist n>n0n>n_0 und n>32βn>3^{\frac{2}{\beta}}. Also hat man:

n>32β>1log3(n)>2ββlog3(n)>2β(log3(n))2>2log3(n)βn(log3(n))2>2nlog3(n)=nlog3(n2).\begin{aligned}n&>3^{\frac{2}{\beta}}>1\\[10pt]&\Leftrightarrow \log_3(n)>\frac{2}{\beta}\\[10pt]&\Leftrightarrow \beta\cdot \log_3(n)>2\\[10pt]&\Leftrightarrow \beta\cdot (\log_3(n))^2>2\cdot \log_3(n)\\[10pt]&\Leftrightarrow \beta\cdot n\cdot (\log_3(n))^2>2\cdot n\cdot \log_3(n)=n\cdot \log_3(n^2)\end{aligned}.

Also hat man damit nlog3(n2)Ω(n(log3(n))2)n\cdot \log_3(n^2)\notin \Omega(n\cdot (\log_3(n))^2) gezeigt.

Insgesamt gilt also nlog3(n2)Θ(n(log3(n))2)n\cdot \log_3(n^2)\notin \Theta(n\cdot (\log_3(n))^2).

Ein anderes Problem?

Stell deine Frage

Ähnliche Fragen

0 Daumen
1 Antwort
0 Daumen
0 Antworten
0 Daumen
0 Antworten