Vorlesung Graphentheorie Wintersemester 2003/04 6. November 2003 Fachbereich Angewandte Informatik Prof. Dr. Peter Becker Aufgabenblatt 3 Aufgabe 1 (Adjazenzmatrix) • Geben Sie für den folgenden DAG die Adjazenzmatrix A an. Hinweis: Die gestrichelten Linien und die unten angegebenen Zahlen brauchen wir erst in Aufgabe 3. • Versuchen Sie zu erkennen, was die Elemente der Matrizen A k aussagen. Berechnen Sie hierzu A2 , A3 , . . .. Hinweis: Da A eine obere Dreiecksmatrix ist, sind auch alle A k obere Dreiecksmatrizen. Sie brauchen also die Elemente auf der Hauptdiagonalen und im unteren Dreieck nicht zu berechnen. 2 5 4 1 7 3 0 6 1 2 3 4 Schwierigkeitsgrad: Nicht allzu schwierig, insbesondere der erste Teil. Aufgabe 2 (Tiefen- und Breitensuche) Geben Sie für den folgenden Graphen die Nummern t(v) bzw. b(v) sowie die Menge B der Baumkanten an, die sich bei der Tiefen- bzw. Breitensuche ergeben. Starten Sie die Suche jeweils bei Knoten a. Die Adjazenzlisten sind alphabetisch sortiert. c j f d b h a e g k l i Schwierigkeitsgrad: einfach, zur Nachbereitung der Vorlesung. Aufgabe 3 (Schichtengraphen) Die Knoten des Graphen aus Aufgabe 1 können wir in fünf Schichten aufteilen: 0 : {1}, 1 : {2, 3}, 2 : {4}, 3 : {5, 6}, 4 : {7} (die Bereiche zwischen den gestrichelten Linien). Alle Knoten einer Schicht sind nur mit Knoten aus den beiden Nachbarschichten verbunden. Die Schichtennummer gibt für die Knoten der Schicht die Entfernung vom Knoten 1 an. Betrachten Sie nun allgemein einen DAG G = (V, A), der genau einen Knoten v mit indeg(v) = 0 hat. Wie kann man mit Breitensuche erkennen, ob solch ein DAG in Schichten eingeteilt werden kann? Schwierigkeitsgrad: mittel, zum praktischen Verständnis der Breitensuche. Aufgabe 4 (Erkennung von Artikulationspunkten) Für einen Graphen G = (V, E) heißt ein Knoten a ∈ V Artikulationspunkt genau dann, wenn die Anzahl der Zusammenhangskomponenten von G(V \ {a}) größer ist als die von G. Anschaulich: Durch die Wegnahme von a und den dazu inzidenten Kanten zerfällt der Graph in mehrere Teile. Artikulationspunkte sind also so etwas wie die Schwachpunkte eines Graphen in bezug auf den Zusammenhang. Beispiel: Betrachten Sie den ungerichteten Graphen, der dem gerichteten Graphen aus Aufgabe 1 zugeordnet ist. Knoten 4 ist dann ein (der einzige) Artikulationspunkt. Wie kann man mit Tiefensuche Artikulationspunkte erkennen? Sie brauchen Ihre Vermutung nicht formal zu beweisen. Hinweis: Schauen Sie sich an, wie die Tiefensuche verläuft, wenn Sie die Tiefensuche mit einem Artikulationspunkt a bzw. einem Knoten v, der kein Artikulationspunkt ist, starten. Probieren Sie dies an dem ungerichteten Graphen zum Graphen aus Aufgabe 1 aus. Wie oft gehen Sie z.B. von 4 bzw. 1 aus in die Tiefe? Schwierigkeitsgrad: mittel, zum praktischen Verständnis der Tiefensuche. Besprechung der Aufgaben am 12./19. November 2003 in den Übungen.