1. ¨Ubungsblatt - Universität Konstanz

Werbung
Entwurf und Analyse von Algorithmen
Universität Konstanz
Fachbereich Informatik und Informationswissenschaft
WS 2009/2010
Prof. Dr. Ulrik Brandes / Natalie Indlekofer
1. Übungsblatt
Ausgabe: 21.10.2009 Abgabe: 28.10.2009, 10 Uhr
Die Bearbeitung in Zweiergruppen ist ausdrücklich erwünscht.
Aufgabe 1: Komplexitätsklassen
5 Punkte
Ordnen Sie die folgenden Funktionen aufsteigend nach ihrem asymptotischen Wachstum,
d.h. falls in Ihrer Anordnung g(n) direkt auf f (n) folgt, gilt f (n) ∈ O(g(n)):
√
1
2n , n 5 , nn , log2 n, 2 log2 n .
Begründen Sie alle Ihre Entscheidungen genau gemäß der Definitionen der O-Notation.
Aufgabe 2: Rekursionsgleichungen
4 Punkte
Bestimmen Sie das asymptotische Wachstum folgender rekursiv beschriebener Laufzeitfunktionen:
(a) T1 (n) = 2 · T1
n
2
+
√
n, T1 (1) = 1
(b) T2 (n) = T2 (n − 1) + 2(n − 1), T2 (1) = 1
Aufgabe 3: Schwellwert
3 Punkte
Geben Sie das größte a ∈ N an, so dass ein Algorithmus mit der Laufzeit
n
TB (n) = a · TB
+ n2
4
asymptotisch schneller ist als ein Algorithmus mit der Laufzeit
n
TA (n) = 7 · TA
+ n2 .
2
[Bitte wenden]
Aufgabe 4: Asymptotische Notation
3 Punkte
Zeigen Sie, dass für Funktionen f, g : N0 → R gilt:
g ∈ o(f )
⇒
g ∈ O(f ) \ Ω(f )
Arbeiten Sie dabei mit der Definition
o(f ) = {g : N0 → R : ∀c > 0 ∃n0 > 0 :
Aufgabe 5: k-Wege-Merge-Sort
c · |g(n)| ≤ |f (n)|
∀n > n0 } .
5 Punkte
Für k > 2 ist k-Wege-Merge-Sort eine Verallgemeinerung von Merge-Sort. Eingabe sei ein
Array A[1, . . . , n] von natürlichen Zahlen, wobei wir der Einfachheit halber n = k r , r ∈ N
annehmen. Ist n = 1, so sind wir fertig und beenden den Algorithmus, andernfalls teilen
wir A in k gleich große Teilstücke B1 , . . . , Bk auf und sortieren diese Teilfolge wiederum mit
k-Wege-Merge-Sort. Anschließend werden die sortierten Teilfolgen gemischt.
Nehmen Sie an, dass dieses Mischen n(k −1) Vergleiche benötigt. Geben Sie die exakte Anzahl
der Vergleiche, die k-Wege-Merge-Sort benötigt, in Abhängigkeit von n und k an. Für welche
Wahl von k ist diese Anzahl minimal?
Herunterladen