ADS - Übungsblatt 1. Aufgabe 1 (Graphen und Relationen). 1. John mag Joan, Jean and Jane; Joe mag Jane und Joan; Jean und Joan mögen sich gegenseitig. Zeichnen sie einen gerichteten Graphen, der diese Beziehungen illustriert. 2. Schlangen fressen Frösche; Vögel fressen Spinnen; sowohl Vögel als auch Spinnen fressen Insekten; Frösche fressen Schnecken, Spinnen und Insekten. Zeichnen sie einen gerichteten Graphen, der diese Fressvorlieben verdeutlicht. 3. Geben Sie ein Beispiel für einen (ungerichteten) Kantenzug, der kein Weg ist. 4. Geben Sie ein Beispiel für einen (ungerichteten) Weg, der kein Pfad ist. 5. Geben sie ein Beispiel für einen (ungerichteten) Zyklus an. Erläuterung: bei den drei Beispielen müssen sie jeweils einen zunächst einen Graphen angeben (als Knoten- und Kantenmengen und, zur Übung, per Zeichnung) und dann den Kantenzug/Weg/Zyklus in der formal korrekten Weise (s. Vorlesungsunterlagen). Aufgabe 2 (D IJKSTRA ). Gegeben ist der folgende ungerichtete, gewichtete Graph G: VG = {a, b, c, d, e}, EG = {{a, b}, {a, c}, {b, c}, {b, d}, {c, e}, {c, d}, {d, e}} mit den Gewichten w(ab) = 3, w(ac) = 5, w(bc) = 1, w(bd) = 4, w(ce) = 3, w(cd) = 2, w(de) = 1 (hier steht ab für die Kante {a, b}). Als Startknoten s sei a ausgewählt. 1. Zeichnen sie den gewichteten Graphen. 1 2. Bestimmen Sie den kürzesten Weg von a zum Knoten e mit Hilfe des Dijkstra-Algorithmus. Verwenden Sie bitte die unten stehende Tabelle (der Initialisierungsschritt wurde schon ausgeführt). Runde 0 1 2 3 4 5 6 7 v∗ - D(a) V(a) 0 - D(b) V(b) 3 a D(c) V(c) 5 a D(d) V(d) ∞ a D(e) V(e) ∞ a 3. Geben Sie den gefundenen kürzesten Weg und seine Länge an: Aufgabe 3 (M OORE -B ELLMANN -F ORD ). Nehmen Sie wieder den Graph von oben, betrachten sie die Kanten als gerichtete Kanten, also E(G) = {(a, b), (a, c), (b, c), (b, d), (c, d), (c, e), (d, e)} und ändern sie das Gewicht der Kanten bd und ce jeweils auf −1. 1. Wenden Sie dann den M OORE -B ELLMANN -F ORD-Algorithmus an, um alle kürzesten Wege von a zu den anderen Knoten zu finden (suchen sie selbst nach einer sinnvollen Darstellung des Ablaufs). 2. Geben Sie die gefundenen kürzesten Wege an: 3. Ergibt sich aus allen kürzesten Wegen ein minimaler Spannbaum? Aufgabe 4 (P RIM ). Gegeben sei wieder der Graph von der D IJKSTA-Aufgabe (also nur positive Kanten). 1. Bestimmen Sie mit P RIMS Algorithmus einen minimalen Spannbaum für den oben (bei Dijkstra) angegebenen Graphen. 2 Tragen Sie die Werte bitte direkt in die Tabelle ein (möglicherweise brauchen Sie nicht 7 Runden . . . ). Runde 0 1 2 3 4 5 6 7 v∗ - D(a) V(a) 0 - D(b) V(b) 3 a D(c) V(c) 5 a D(d) V(d) ∞ a D(e) V(e) ∞ a 2. Zeichnen Sie den gefundenen minimalen Spannbaum. 3. Geben Sie das Gesamtgewicht des minimalen Spannbaums an: ____ 4. Richtig oder Falsch? Der von P RIMS Algorithmus bestimmte Spannbaum ist identisch mit dem Spannbaum, den die Anwendung des D IJKSTRA-Algorithmus oben generiert, wenn sie dort alle kürzesten Wege von a zu einem anderen Knoten bestimmt hätten und mit diesen Wegen einen Baum (der ein Spannbaum ist!) bilden würden. 5. Richtig oder Falsch? Von P RIMS Algorithmus bestimmte Spannbäume sind immer besser, als die Spannbäume, die aus der Anwendung des D IJKSTRA-Algorithmus entstehen. Aufgabe 5. Zeigen Sie: Jeder ungerichtete Graph ohne Schleifen mit n >= 2 Knoten enthält mindestens zwei Knoten mit gleichem Grad. [Sie können und sollen sich auf die Betrachtung von zusammenhängenden Graphen beschränken]. Hinweise: • eine Schleife ist eine Kante, die einen Knoten unmittelbar mit sich selbst verbindet (die gibt es hier also nicht) • der Grad eines Knotens entspricht der Anzahl der Kanten, die in ihm enden bzw. beginnen (die also inzident zu diesem Knoten sind). • Übrigens kann man das zum Beispiel mit einem Größenvergleich von Mengen lösen . . . richtig, wie ging das noch? Ja, das hatte etwas mit injektiven oder bijektiven Funktionen zu tun! – wenn jeder der n Knoten einen anderen Grad hätte, und sie diese Gradzahlen in eine Menge packen würden, dann müßten da ___ verschiedene natürliche Zahlen drin sein. Kann das aber sein? – Wie groß kann die Gradzahl eines Knotens in einem ungerichten Graphen ohne Schleifen bei n Knoten höchstens werden: ___ – Wieviel verschiedene Gradzahlen kann man deshalb höchstens in einem verbundenen ungerichteten Graphen haben ___? Viel Spass dabei! 3