ADS - Übungsblatt 1. Bearbeiten bis zum 28.4. Vorbemerkung zu

Werbung
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
Herunterladen