09.07.2015 Aufrufe

¨Ubungen zur Vorlesung Datenstrukturen und Algorithmen SS 2005 ...

¨Ubungen zur Vorlesung Datenstrukturen und Algorithmen SS 2005 ...

¨Ubungen zur Vorlesung Datenstrukturen und Algorithmen SS 2005 ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Johannes Blömer Paderborn, den 23. Juni <strong>2005</strong>u.v.a.m.Abgabe 11. Juli <strong>2005</strong>, 11:00, Kästen Flur D3Übungen <strong>zur</strong> <strong>Vorlesung</strong><strong>Datenstrukturen</strong> <strong>und</strong> <strong>Algorithmen</strong><strong>SS</strong> <strong>2005</strong>Blatt 11AUFGABE 1 (4 Punkte):Betrachten Sie den Graphen G 1 in Abbildung 1. Der Graph G 1 sei in Adjazenzlisten-Darstellunggegeben. In jeder Adjazenliste eines Knotens sind die benachbarten Knoten aufsteigend sortiert.Bestimmen Sie den Breitensuch-Baum, wenn Algorithmus BF S mit Graph G 1 <strong>und</strong>Quelle 1 aufgerufen wird. Bestimmen Sie die Werte d[u] <strong>und</strong> π[u] für jeden Knoten u.Abbildung 1: Graph G 1 für Aufgabe 1AUFGABE 2 (6 Punkte):Sei G = (V, E) ein gerichteter Graph. Ein Knoten v ∈ V von G heisst Senke, wenn v vonjedem anderen Knoten w des Graphen G erreichbar ist, d.h., wenn es von jedem Knotenw ≠ v in G einen gerichteten Pfad nach v gibt. Ein Beispiel eines gerichteten Graphen mitSenke ist in Abbildung 2 dargestellt.Abbildung 2: Gerichteter Graph mit Senke - Beispiel zu Aufgabe 2Zeigen Sie, dass es einen Algorithmus C gibt, der bei Eingabe eines gerichteten GraphenG = (V, E) in Zeit O ( |V | 2 + |V ||E| ) entscheidet, ob der Graph eine Senke besitzt.


AUFGABE 3 (4 Punkte):Betrachten Sie den gerichteten Graphen G 2 in Abbildung 3. Der Graph G 2 sei in Adjazenzlisten-Darstellung gegeben. Jede Adjazenzliste sei dabei alphabetisch sortiert. Bestimmen Sie denTiefensuch-Wald, wenn Algorithmus DF S mit Graph G 2 aufgerufen wird. In den Zeilen 5-7von DF S werden dabei die Knoten in alphabetischer Reihenfolge betrachtet.Abbildung 3: Graph G 2 für Aufgabe 3AUFGABE 4 (12 Punkte):Erarbeiten Sie sich anhand der Fachliteratur das Konzept der topologischen Sortierung einesGraphen (z.B. in [CLRS2nd], Seite 549ff) <strong>und</strong> bearbeiten Sie die folgenden Aufgaben.a) Gegeben Sei der folgende Graph G.✓✏✓✏✓✏1✲ 4 ✛7✒✑✒✑✒✑✻ ❍ ❍ ✑ ❍❨ ❍❍❍❍❥ ✓✏✑✻ ❍❍ ✓✏ ✻✑✰ ❍3✑6✒✑◗❦ ◗✒✑◗ ◗✓✏✓✏✟ ✟✟✟✟✯ ◗◗◗◗✓✏2 ✛58✒✑✒✑✒✑Geben Sie eine topologische Sortierung von G an. (2 Punkte)b) Im Allgemeinen wird die topologischen Sortierung für so genannte DAGs definiert. Istdies notwendig, oder existiert auch ein vernünftiger Begriff der topologischen Sortierungfür allgemeine gerichtete oder ungerichtete Graphen? Begründen Sie Ihre Antwort! (2Punkte)c) Finden Sie einen Algorithmus, der mit Hilfe der Tiefensuche eine topologische Sortierungzu einem gegebenen DAG bestimmt. Sollten Sie den Algorithmus der Literaturentnehmen, so geben Sie bitte Ihre Quelle an. (2 Punkte)d) Bestimmen Sie die Laufzeit des Algorithmus aus c). (2 Punkte)e) Beweisen Sie die folgende Aussage: Ein gerichteter Graph G ist genau dann azyklisch,wenn die Tiefensuche auf G keine Rückkanten liefert. (2 Punkte)f) Beweisen Sie die Korrektheit des Algorithmus aus c). (2 Punkte)

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!