Sie sind auf Seite 1von 2

Lehrstuhl Informatik V

Informationssysteme
Prof. Dr. M. Jarke

Übungsblatt 10
Algorithmen und Datenstrukturen
Sommersemester 2009
Abgabe: am 14.07. vor der Vorlesung

Anmerkungen:
Geben Sie auf der ersten Seite ihrer Lösung Name, Matrikelnummer, und Studiengang an.
Aufgabe 1 (Graphdurchläufe) 1 +1+2+2 Punkte

Gegeben sei der folgender Graph G:


Ponttor
Audimax

Hörn
Hauptgebäude Bushof

Kármán
Markt

Kaiserplatz

Theater

a) Stellen Sie für den Graphen G die boolsche Adjazenzmatrix auf.


b) Stellen Sie für den Graphen G die Adjazenzliste auf.
c) Geben Sie an, in welcher Reihenfolge die Knoten des Graphen G bei einer
Tiefensuche ausgehend vom Hauptgebäude besucht werden. Nachfolgeknoten sollen
hierbei nach lexikografischer Sortierung (mit a < á ) besucht werden. Geben Sie auch
den Suchbaum gem. Folie 4-15 an.
d) Führen Sie für den Graphen G eine warteschlangengestützte Breitensuche nach
folgenden Algorithmus (Pseudocode) für „root = Hauptgebäude“ durch:

01 Queue Q = new Queue();


02 G.mark(root);
03 Q.put(root);
04 while (Q.isEmtpy() == false) {
05 Vertex v = Q.get();
06 G.visit(v);
07 for (Vertex v2 : v.Neighbors.sorted())
08 if (G.isMarked(v2) == false) {
09 G.mark(v2);
10 Q.put(v2);
11 }
12 }
13 }

1
Hierbei werden die noch nicht markierten Nachfolgeknoten eines zu bearbeitenden
Knoten markiert und in lexikografischer Reihenfolge in eine Warteschlange eingefügt.
Geben Sie die Besuchsreihenfolge und jeweils vor Zeile 5 den Zustand der
Warteschlange an.

Aufgabe 2 (Dijkstra) 5 Punkte

Betrachten Sie den ungerichteten Graphen G‘ mit den als Kantenbeschriftung angegebenen
Kosten (fiktiven Distanzen).

Ponttor
0,3
Audimax
0,2 0,7
Hörn 2,1 1,2

Hauptgebäude Bushof
0,1
0,5 1,6
Kármán 0,8
1,2
Markt
1,3
Kaiserplatz
1,4
Theater

Berechnen Sie vom Hauptgebäude aus mittels Dijkstra-Algorithmus alle günstigsten Pfade.
Nutzen Sie die Tabellennotation von Folie 4-22 und geben Sie zusätzlich die Distanz der
günstigsten Pfade in aufsteigender Reihenfolge explizit an.