Hochgeladen von Maher Brahim

Algo daten

Werbung
Aufgabe 1: O-Notation
(a)
Für 𝑓(𝑛) = 3𝑛3 + 8𝑛2 + 𝑛 und 𝑔(𝑛) = 𝑛3 :
Wenn wir z.B. c=3+8+1=12 wählen, dann gilt für alle 𝑛 ≥ 𝑛0 = 1 : 3𝑛3 + 8𝑛2 +
𝑛 ≤ 12𝑛3
Und somit gilt 3𝑛3 + 8𝑛2 + 𝑛 πœ– 𝑂(𝑛3 ).
2𝑛 ∈ π‘œ(𝑛!)?
Zu zeigen: 𝑛! > 2𝑛 𝑓üπ‘Ÿ π‘Žπ‘™π‘™π‘’ 𝑛 ≥ 4
bzw. 𝑐 ⋅ 𝑔(𝑛) ≥ 𝑓(𝑛) 𝑓üπ‘Ÿ π‘Žπ‘™π‘™π‘’ 𝑛 ≥ 𝑛0 mit 𝑐 = 1 𝑒𝑛 β…† 𝑛0 = 4 > 0
Induktionsbeweis:
Induktionsanfang: für n=4 ⇒ 4! = 24 ≥ 16 = 24 .
Induktionsbedingung: 𝑛! > 2𝑛
Induktionsschluss: (𝑛 + 1)! = (𝑛 + 1) ⋅ 𝑛! > (𝑛 + 1) ⋅ 2𝑛 > 2.2𝑛 = 2𝑛+1
⇒ Die Aussage gilt!
(b)
(c)Angenommen die Aussage gilt, Dann gilt laut Definition:
𝛺((π‘™π‘œπ‘” 𝑛)2 ) ≔ {2 π‘™π‘œπ‘”π‘› | ∃ 𝑐, 𝑛0 > 0 ∀𝑛 ≥ 𝑛𝑂 : 2 π‘™π‘œπ‘” 𝑛 ≥ 𝑐 ⋅ (π‘™π‘œπ‘” 𝑛)2}
2 π‘™π‘œπ‘” 𝑛 ≥ 𝑐 ⋅ (π‘™π‘œπ‘” 𝑛)2
⇒ 2 ≥ 𝑐 ⋅ π‘™π‘œπ‘”π‘›
2
Seien c > 0 und 𝑛𝑂 πœ–β„• beliebig. Dann gilt für alle π‘›πœ–β„• mit 𝑛 > max(𝑛𝑂 , 𝐢), dass
2 ≤ 𝑐 ⋅ π‘™π‘œπ‘”π‘› ist. ⇒ ein Widerspruch. Somit muss die Annahme falsch sein und die
Aussage gilt nicht.
(d)
Zu zeigen :
∃𝑐1 , 𝑐2 ∈ ℝ+ , 𝑛𝑂 πœ–β„• ∀𝑛 ≥ 𝑛0 : 𝑐1 ⋅ (𝑓(𝑛) + 𝑔(𝑛)) ≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑐2 ⋅ (𝑓(𝑛) + 𝑔(𝑛))
Beweis:
Wir nehmen an, dass 𝑓(𝑛) ≤ 𝑔(𝑛) ist, somit folgt max(𝑓(𝑛), 𝑔(𝑛)) = 𝑔(𝑛)
⇒ 𝑔(𝑛) ≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛)
β…†π‘Ž 𝑓 𝑒𝑛ⅆ 𝑔 π‘ƒπ‘œπ‘ π‘–π‘‘π‘–π‘£π‘’ πΉπ‘’π‘›π‘˜π‘‘π‘–π‘œπ‘›π‘’π‘› 𝑠𝑖𝑛ⅆ, 𝑔𝑖𝑙𝑑:
⇒ 𝑔(𝑛) ≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛) + 𝑓(𝑛)
⇒ 𝑔(𝑛) ≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛) + 𝑓(𝑛)
𝑔(𝑛) 𝑔(𝑛)
⇒
+
≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛) + 𝑓(𝑛)
2
2
𝑓(𝑛) 𝑔(𝑛)
⇒
+
≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛) + 𝑓(𝑛)
2
2
(1)
1
⇒ (𝑔(𝑛) + 𝑓(𝑛)) ≤ max(𝑓(𝑛), 𝑔(𝑛)) ≤ 𝑔(𝑛) + 𝑓(𝑛).
2
1
𝑓üπ‘Ÿ 𝑐1 = 2 , 𝑐2 = 1 gilt die zu zeigende Gleichung (1) und daher gilt die folgende Aussage
für alle n>0:
max{𝑓(𝑛), 𝑔(𝑛)} ∈ 𝛩(𝑓(𝑛) + 𝑔(𝑛))
Aufgabe 2: Sortieren nach asymptotischem Wachstum:
√log 𝑛 < log 𝑛 = log(√𝑛) = log(𝑛3 ) < (log 𝑛)2 < √𝑛 < 10100 𝑛 < 𝑛 log 𝑛 < 𝑛100
2
< 2𝑛 < 3𝑛 < (2𝑛 )2 < 2𝑛 < 𝑛! < (𝑛 + 1)! < 𝑛𝑛
Herunterladen