Prof. Dr. R. Schrader SS 2005 Katja Korherr
5. Übung zur Vorlesung Informatik I Abgabe: 27.05. bis 13.00 Uhr Besprechung: 30.05. bis 03.06.
in den Übungsgruppen
Aufgabe 1: (?)
a) Mit Hilfe von Stapeln kann man den Algortihmus quicksort ohne rekursive Aufrufe implementieren. Formulieren Sie dies im Pseudocode.
b) Geben Sie eine Variante an, die nur O(log(n))Platz auf dem Stapel benötigt und beweisen Sie dies.
(6 Punkte)
Aufgabe 2:
Gegeben sei die Zahlenfolge[2,6,3,4,7,8,9,1,5], die mit Hilfe des Algorithmus heapsort sortiert werden soll.
a) Zeichnen Sie den Max-Heap, der im ersten Teil des Algorithmus aufgebaut wird.
b) Zeichnen Sie für die ersten vier Durchläufe der for-Schleife im zweiten Teil des Algorithmus den jeweiligen Heap.
Aufgabe 3: (?)
Prioritätsschlangen können mit Hilfe von Heaps implementiert werden. Wieviel Zeit benötigen die OperationenMaximum(S)undExtractMax(S)? Wie kann man die OperationInsert(S,x)realisieren und wieviel Zeit benötigt sie? Wie lassen sich Prioritätsänderungen als zusätzliche Operationen hinzufügen und wieviel Zeit benötigen sie im worst-case?
(5 Punkte)
Aufgabe 4: (?)
Zeichnen Sie den Entscheidungsbaum von Heapsort für die Eingabefolge [a, b, c].
Hierbei können Sie davon ausgehen, dassa, bundcpaarweise verschieden sind.
(4 Punkte)
1