Beruflich Dokumente
Kultur Dokumente
Aufgabe 1 [ACAT]
Bestimmen Sie die Anzahl der Elementaroperationen, die in der folgenden Methoden ausgeführt
werden und leiten Sie daraus die Laufzeit im O-Kalkül ab.
Aufgabe 2 [Theorie]
Aufgabe 3 [Theorie]
Aufgabe 4 [Theorie]
Peter und Paul streiten sich über die Effizienz eines Algorithmus. Peter sagt, sein O(n · logn)-
Algorithmus sei immer schneller als Pauls O(n2 )-Algorithmus. Sie implementieren beide Algo-
rithmen. Zu Peters Entäuschung finden sie heraus, dass für n < 100 der O(n2 )-Algorithums
schneller ist und nur wenn n >= 100 ist, ist der O(n · logn)-Algorithmus besser.
Erläutern Sie, warum das obige Szenario möglich ist. Numerische Beispiele sind erlaubt.
Aufgabe 5 [Theorie]
Gegeben seien zwei Algorithmen:
sum = 0
for i in range(n):
for j in range(n):
sum += i*j
return sum
und
sum = 0
for i in range(n):
for j in range(i):
sum += i*j
return sum
Aufgabe 6 [Theorie]
Gegeben sind Scatter-Plots, auf denen die Laufzeit (y-Axis) in Abhängigkeit zur Eingabelänge
(x-Axis) für Algorithmen dargestellt ist. Es sind jeweils 500 Datenpunkte (50 unterschiedliche
Datenlängen, je 10 Durchläufe):
50,000
40,000
30,000
20,000
10,000
0
0 2 · 107 4 · 107 6 · 107 8 · 107
40,000
30,000
20,000
10,000
0
2,000 4,000 6,000 8,000
(a) Schätzen Sie für die Plots die Laufzeitkomplexität im O-Kalkül für Worst, Best und Avg-
Case.
(b) Haben Sie eine Idee welche Algorithmen zu den Plots/Laufzeiten passen könnten?
Bearbeiten Sie die Aufgaben in der ersten Woche eigenständig! Hilfe bei der Lösung der Aufgaben
erhalten Sie in den Übungen.