ADS - Übungsblatt 1. Bearbeiten bis zum 28.4. Vorbemerkung zu den Tabellen für die Algorithmen: D IJKSTRA und P RIM wurden schon so geprüft, M OORE -B ELLMAN -F ORD noch nicht, es kann also sein, dass die Tabelle der MBF noch verbesserungswürdig ist - wenn sie damit nicht zurechtkommen, stellen sie die Aufgabe erstmal hinten an - den Rest sollten sie aber in jedem Fall probieren! 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. 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. 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 3. Geben Sie den gefundenen kürzesten Weg und seine Länge an: 1 D(d) V(d) ∞ a D(e) V(e) ∞ a Aufgabe 3 (M OORE -B ELLMANN -F ORD ). Nehmen Sie wieder den Graph von oben, aber ä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. Tragen Sie die Werte bitte direkt in die Tabelle ein (möglicherweise brauchen Sie nicht 6 Runden . . . ). Runde 0 1 2 3 4 5 6 v∗ - D(a) V(a) 0 - D(b) V(b) ∞ a D(c) V(c) ∞ a D(d) V(d) ∞ a D(e) V(e) ∞ a 2. Geben Sie die gefundenen kürzesten Wege an: 3. Ergibt sich aus allen kürzesten Wegen ein minimaler Spannbaum? 4. Wenn sie das Gewicht der Kante bd auf −2 setzen würden (und ce auf −1, wie gehabt), könnten Sie dann den Algorithmus noch sinnvoll anwenden? Begründen Sie kurz. 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 angegebenen Graphen. 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 2. Zeichnen Sie den gefundenen minimalen Spannbaum. 3. Geben Sie das Gesamtgewicht des minimalen Spannbaums an: ____ 2 D(e) V(e) ∞ a 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 ___? Mal schauen, ob das jemand lösen kann, ohne zu googlen ... viel Erfolg! 3