• Keine Ergebnisse gefunden

¨Ubungen zur Vorlesung Datenstrukturen und Algorithmen SS 2007 Blatt 2

N/A
N/A
Protected

Academic year: 2022

Aktie "¨Ubungen zur Vorlesung Datenstrukturen und Algorithmen SS 2007 Blatt 2"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Christian Sohler Paderborn, den 17. April 2007

u.v.a. Abgabe 7. Mai 2007

Ubungen zur Vorlesung ¨

Datenstrukturen und Algorithmen SS 2007

Blatt 2

AUFGABE 5:

Analysieren Sie die Laufzeit des in der Vorlesung vorgestellten MergeSort Algorithmus mit der Substitutionsmethode. Betrachten Sie dabei als Eingabe ein Array A einer beliebigen L¨ange n, d.h. dass n nicht unbedingt eine Zweierpotenz ist. Ber¨ucksichtigen Sie deshalb das Runden in Schritt 2 des MergeSort Algorithmus.

AUFGABE 6:

Analysieren Sie die Laufzeit des in der Vorlesung vorgestellten, verbesserten Divide-&-Conquer Algorithmus zur Multiplikation zweier n-Bit Integer mit der Iterationsmethode. Nehmen Sie dabei zur Vereinfachung an, dassneine Zweierpotenz ist. Geben Sie außerdem einen formalen Korrektheitsbeweis f¨ur den Algorithmus an.

AUFGABE 7:

a) L¨osen Sie die folgende Rekurrenzgleichung durch Anwenden der Iterationsmethode.

T(1) =c und f¨ur alle n >1 gilt T(n)9T(n/3) + 9n3

b) Die LaufzeitT(n) von Algorithmus A sei gegeben durch die RekursionsgleichungT(n) = 7·T(n2) +n2. Die Laufzeit S(n) von Algorithmus B sei gegeben durch die Rekursions- gleichung S(n) = a·S(n4) +n2. Bestimmen Sie die Laufzeiten beider Algorithmen und den gr¨oßten Wert von a, f¨ur den B asymptotisch schneller als A ist. Begr¨unden Sie Ihre Antworten!

AUFGABE 8:

In Hanoi steht ein Tempel des Brahma, in dem fleißige M¨onche

Abbildung 1: T¨urme von Hanoi

64 schwere Metallscheiben von einem Stapel auf einen anderen schichten. Die Scheiben sind so schwer, daß immer nur eine ein- zige bewegt werden kann. Die M¨onche benutzen drei Stapel, einen Start- (A), einen Hilfs- (B) und einen Zielstapel (C), und die strenge Regel des Brahma besagt, daß niemals eine gr¨oßere Scheibe auf einer kleineren liegen darf. Eine Prophezeiung be- sagt, daß an dem Tag, an dem es den M¨ochen gelingt, alle Schei- ben in der richtigen Reihenfolge auf den Zielstapel zu legen, das Ende der Welt gekommen ist.

(2)

a) Geben Sie einen rekursiven Algorithmus im Pseudocode an, der das Problem

”T¨urme von Hanoi“ l¨ost.

b) Beweisen Sie die Korrektheit des Algorithmus.

c) Formulieren und l¨osen Sie die Rekurrenzgleichung, die den Aufwand f¨ur das Problem

”T¨urme von Hanoi“ beschreibt.

AUFGABE 9:

Wir betrachten Punkte in der Ebene. F¨ur zwei Punkte p1 = (x1, y1) und p2 = (x2, y2) sagen wir, p1 dominiert p2, wenn x1 x2 und y1 y2. Ein Punkt heißt maximal, wenn er von keinem anderen Punkt dominiert wird. Geben Sie einen Divide-&-Conquer Algorithmus im Pseudocode an, der die maximalen Punkte einer Punktmenge der Gr¨oße n berechnet.

Analysieren Sie die Laufzeit des Algorithmus.

AUFGABE 10:

Eine Aufgabe zum Knobeln: Geben Sie einen Algorithmus im Pseudocode an, der die Anzahl an Dreiecken in einem ungerichteten GraphenG= (V, E) bestimmt. Die Kanten des Graphen sind dabei durch eine Adjazenzmatrix festgelegt. Zeigen Sie die Korrektheit des Algorithmus und analysieren Sie dessen Laufzeit. (Hinweis: Verwenden Sie Matrixmultiplikationen.)

Referenzen

ÄHNLICHE DOKUMENTE

b) Geben Sie den Algorithmus aus a) in Pseudocode an, so dass er bei Eingabe eines Arrays A mit A[i] = α i die minimalen Gesamtkosten als Ergebnis zur¨ uckliefert. Die Reihenfolge

Christian Sohler Paderborn,

(Hinweise: Der k¨urzeste Weg zwischen zwei Knoten ist durch das Gewicht gegeben, nicht durch die Anzahl an Kanten.. Welche Aussage kann man ¨uber die ben¨otigte Anzahl an

Machen Sie dabei vor allem deutlich wie die beiden Algorithmen mit Hilfe von Datenstruk- turen die Knotenmenge verwalten.

Das Spiel bevorteilt die Bank, falls die Bank im Erwartungswert von einem Spieler mehr Geld einnimmt als sie an diesen auszahlt?.

Wenden Sie dann den Tiefensuchalgorithmus startend bei Knoten 1 auf den Graphen an und geben Sie zu jedem Knoten v die Discovering/Finishing-Times (d[v], f [v]) an. Benutzen Sie

Christian Sohler Paderborn, den 22. Ist dies notwendig, oder existiert auch ein vern¨unftiger Begriff der topologischen Sortierung f¨ur allgemeine gerichtete oder ungerichtete

Modifizieren Sie den Algorithmus von Bellman-Ford, so dass dieser in Laufzeit O(|V | · |E|) f¨ur jeden Knoten v ∈ V die Kosten eines k¨urzesten s-v-Pfades berechnet, wobei |E| >