Diskrete Mathematik 1

Ähnliche Dokumente
Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Bäume und Wälder. Seminar: Graphentheorie Sommersemester 2015 Dozent: Dr. Thomas Timmermann

WS 2009/10. Diskrete Strukturen

3 Klassifikation wichtiger Optimierungsprobleme

Bäume und Wälder. Definition 1

Isomorphie von Bäumen

WS 2008/09. Diskrete Strukturen

3. Musterlösung. Problem 1: Boruvka MST

Verteilen von Bällen auf Urnen

5. Musterlösung. Problem 1: Vitale Kanten * ω(f) > ω(f ). (a) Untersuchen Sie, ob es in jedem Netzwerk vitale Kanten gibt.

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt

Diskrete Mathematik für Informatiker

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Das Briefträgerproblem

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld

Übungsblatt 2 - Lösung

Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Minimal spannender Baum

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Fortgeschrittene Netzwerk- und Graph-Algorithmen

6. Übung zur Linearen Optimierung SS08

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.

Diskrete Mathematik 1

Klausur zu Diskrete Strukturen, WS 09/10

Der Fünffarbensatz Proseminar: Graphentheorie Sommersemester 2006 Isa Topac, Markus Kunder, Tim Hahn

WS 2013/14. Diskrete Strukturen

Graphen und Bäume. A.1 Graphen

MafI I: Logik & Diskrete Mathematik (F. Hoffmann)

Das Steinerbaumproblem

Graphen und Algorithmen

Algorithmen und Datenstrukturen 2

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

1. Einleitung wichtige Begriffe

Studientag zur Algorithmischen Mathematik

Graphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

9. Übung Algorithmen I

8 Diskrete Optimierung

TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK

Algorithmen & Komplexität

Ausarbeitung zum Modulabschluss. Graphentheorie. spannende Bäume, bewertete Graphen, optimale Bäume, Verbindungsprobleme

3. Musterlösung. Problem 1: Heapsort

Das Heiratsproblem. Definition Matching

Fünf-Farben-Satz. Seminar aus reiner Mathematik, WS 13/14. Schweighofer Lukas, November Seite 1

Algorithmen II Vorlesung am

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

Wiederholung zu Flüssen

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Donnerstag den x > 1 3x > 3 3x + 3 > 6 6x + 3 > 3x + 6.

WS 2009/10. Diskrete Strukturen

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 16/17

Aufgaben und Lösungen zum Vorkurs Mathematik: Beweismethoden Für Mittwoch den

Bipartite Graphen. Beispiele

15. Elementare Graphalgorithmen

Ausarbeitung über den Satz von Menger und den Satz von König

Grundbegriffe der Informatik

2. Optimierungsprobleme 6

Einführung in die Graphentheorie. Monika König

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Klausur Theoretische Informatik I WS 2004/2005

Grundbegriffe der Informatik

Vorlesung. Vollständige Induktion 1

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Geraden in der Ebene und Zerlegung von Graphen

Graphen. Leonhard Euler ( )

Algorithmen und Datenstrukturen (WS 2007/08) 63

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

Kombinatorische Optimierung

Definition Gerichteter Pfad. gerichteter Pfad, wenn. Ein gerichteter Pfad heißt einfach, falls alle u i paarweise verschieden sind.

Quicksort ist ein Divide-and-Conquer-Verfahren.

Diskrete Mathematik I

Binary Decision Diagrams (Einführung)

ADS: Algorithmen und Datenstrukturen 2

Diskrete Mathematik 1 WS 2008/09

Klausur. Diskrete Mathematik I. Donnerstag, den um 14 Uhr

TECHNISCHE UNIVERSITÄT MÜNCHEN

Graphentheorie Mathe-Club Klasse 5/6

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik

Visualisierung von Graphen

Algorithmen und Datenstrukturen 2

4.7 Der Algorithmus von Dinic für maximalen Fluss

Liegt eine Kante k auf einem Zyklus Z, so liegt k auf dem Rand genau zweier

Übung zu Grundbegriffe der Informatik. Simon Wacker. 15. November 2013

Statistik und Graphentheorie

WS 2008/09. Diskrete Strukturen

Fachwissenschaftliche Grundlagen

Vorkurs Mathematik und Informatik Mengen, natürliche Zahlen, Induktion

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte)

3 Vom Zählen zur Induktion

4. Kreis- und Wegeprobleme Abstände in Graphen

Algorithmen und Datenstrukturen

Grundlagen der Mathematik

Effiziente Algorithmen I

Transkript:

Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 2008/09 Blatt 4 / 11. November 2008 / Abgabe bis 18. November 2008, 08.00 Uhr, in die Kästen auf NA 02 AUFGABE 1 (8 Punkte): (a) Gegeben sei der folgende Graph G(V, E): 1 2 3 6 5 4 Bestimmen Sie den Prüfercode von G. Geben Sie dazu in jedem Schritt des Algorithmus an, was Sie definieren und welche Kante Sie aus dem Graphen entfernen. Zeichnen Sie den Baum mit n = 8 Knoten, dessen Prüfercode 121444 ist. Geben Sie dazu die Kanten des Baumes in der Reihenfolge an, in der sie durch Aufruf des Algorithmus Dekodierung generiert werden. (a) Wir benutzen den Algorithmus Kodierung aus der Vorlesung. Für jeden Iterationsschritt der Schleife geben wir zum Laufindex i den ausgewählten Knoten v, den Wert für t i, die Kante k, die entfernt wird, und die noch zu betrachtende Knotenmenge V an. i = 1 : v = 1, t 1 = 2, entferne die Kante {1, 2}. Damit ergibt sich V = {2, 3, 4, 5, 6}. i = 2 : v = 3, t 2 = 2, entferne die Kante {2, 3}. Damit ergibt sich V = {2, 4, 5, 6}. i = 3 : v = 4, t 3 = 2, entferne die Kante {2, 4}. Damit ergibt sich V = {2, 5, 6}. i = 4 : v = 2, t 4 = 5, entferne die Kante {2, 5}. Damit ergibt sich V = {5, 6}.

Nun ist V = 2 und der Algorithmus terminiert. Der gesuchte Prüfercode ist 2225. Wir verwenden den Algorithmus Dekodierung. Nach Durchlaufen der ersten Schleife erhalten wir folgende Knotengrade: deg(1) = 3 deg(2) = 2 deg(3) = 1 deg(4) = 4 deg(5) = 1 deg(6) = 1 deg(7) = 1 deg(8) = 1 Für jeden Iterationsschritt i der zweiten Schleife geben werden deg(i), der Knoten v, die hinzugefügte Kante k und die Veränderung der Knotengrade angegeben. i = 1 : v = 3, neue Kante {1, 3}. Damit ergibt sich deg(1) = 2, deg(3) = 0. i = 2 : v = 5, neue Kante {2, 5}. Damit ergibt sich deg(2) = 1, deg(5) = 0. i = 3 : v = 2, neue Kante {1, 2}. Damit ergibt sich deg(1) = 1, deg(2) = 0. i = 4 : v = 1, neue Kante {1, 4}. Damit ergibt sich deg(1) = 0, deg(4) = 3. i = 5 : v = 6, neue Kante {4, 6}. Damit ergibt sich deg(4) = 2, deg(6) = 0. i = 6 : v = 7, neue Kante {4, 7}. Damit ergibt sich deg(4) = 1, deg(7) = 0. Es bleiben die Knoten 4 und 8 mit Grad 1. Daher wird zusätzlich die Kante {4, 8} in den Graphen eingefügt. Insgesamt ergibt sich der folgende Graph G. 8 4 7 1 3 6 2 5

AUFGABE 2 (4 Punkte): Ein Tupel (d 1, d 2,..., d n ) ist eine Gradfolge eines Graphen G = ([n], E), wenn deg(i) = d i für i = 1,..., n. Sei d 1 d 2... d n > 0 eine Folge natürlicher Zahlen. Beweisen Sie: Es existiert ein Baum B = ([n], E) mit Gradfolge (d 1,..., d n ) n d i = 2n 2 i=1 Zunächst wird Es existiert ein Baum B = ([n], E) mit Gradfolge (d 1,..., d n ) n 2n 2 gezeigt: Sei B = (V, E) Baum mit Gradfolge (d 1,..., d n ). Dann gilt nach dem Satz über die Eigenschaften von Bäumen, dass B zusammenhängend ist mit E = n 1. Nach dem Handschlaglemma gilt 2 E = n i=1 d i. Also ist n 2 E = 2n 2. Die Aussage Es existiert ein Baum B = ([n], E) mit Gradfolge (d 1,..., d n ) n 2n 2 zeigen wir mit Induktion: Wir beginnen mit n = 2, da sonst d 1 = 0 wäre und dies keine Gradfolge der geforderten Form darstellt. Induktionsanfang n = 2: Der vollständige Graph mit zwei Knoten und einer Kante erfüllt 1 + 1 = 2 2 2 und ist ein Baum. Induktionsvoraussetzung: Für ein n N lasse sich die Gradfolge (d 1,..., d n ) mit n 2n 2 als Baum realisieren. Induktionsschluss: Sei d 1 d 2... d n+1 > 0 gegeben mit n+1 2(n+1) 2 = 2n. Es ist hierbei d n+1 = 1. Sonst wäre n+1 i=1 d i n+1 i=1 d n+1 (n+1) 2 > 2n, was ein Widerspruch zur Voraussetzung ist. Damit gilt auch d 1 2. Denn falls d 1 = 1 folgt d i = 1 für alle i = 1,..., n + 1. Dann gilt aber n+1 i=1 d i n+1 i=1 d 1 (n + 1) 1 = n + 1 < 2(n + 1) 2 = 2n für n > 1, was ein Widerspruch zur Voraussetzung ist. Wir betrachten daher die Folge (d 1 1, d 2,..., d n ). Für die Gradsequenz wird d 1 an geeigneter Stelle in die Folge eingefügt. Wir belassen es ohne Beschränkung der Allgemeinheit an erster Stelle. Nach Induktionsvoraussetzung gibt es einen Baum B = (Ṽ, Ẽ) mit n Knoten, der die Gradsequenz (d 1 1, d 2..., d n ) hat. Wir definieren B = (Ṽ {n + 1}, Ẽ {{1, n + 1}}). Dies ist ein Baum, da nur eine Kante zu einem neuen Knoten hinzugefügt wurde und so keine Kreise entstehen können. AUFGABE 3 (4 Punkte): In einem kleinen Fürstentum gibt es 8 Städte, die alle durch einfache Schotterstraßen miteinander verbunden sind. Nun sollen einige Straßen zu modernen Landstraßen ausgebaut werden.

(a) Wieviele Straßen müssen mindestens ausgebaut werden, damit zwischen zwei Städten immer ein Weg auf neu ausgebauten Straßen existiert? Wieviele solcher Straßennetze gibt es? Geben Sie drei nicht isomorphe Varianten an. Berechnen Sie die Anzahl der möglichen Straßennetze, falls jede Stadt von einer ungeraden Anzahl ausgebauter Straßen erreicht wird. Hinweis: Betrachten Sie hierzu den Prüfercode. (a) Man stelle das Fürstentum als Graph G dar. Die Städte entsprechen den Knoten, die neu ausgebauten Straßen den Kanten. Um alle Städte zu verbinden, benötigt man mindestens 7 neu ausgebaute Straßen. Sonst besäße der Graph G 8 Knoten und m < 7 Kanten und damit nach dem Satz über Zusammenhangskomponenten mindestens 8 m > 1 Zusammenhangskomponenten. Der Graph wäre also nicht zusammenhängend. 7 Kanten genügen, da dies genau die Anzahl der Kanten eines beliebigen Spannbaumes von G ist. Die Städte und damit die Knoten des Graphen sind unterscheidbar, also gibt es nach Vorlesung 262144 verschiedene Spannbäume. Drei mögliche Spannbäume sind die folgenden: Bemerkung: Aus praktischer Sicht ist ein Sterngraph sinnvoller als ein Pfad der Länge 7, da die Abstände zwischen den einzelnen Städten im Schnitt kürzer sind. Der Prüfercode der gesuchten Graphen hat die Länge 8 2 = 6. Jeder Knoten muss, wenn er im Prüfercode vorkommt, mit einer gerade Anzahl vorkommen, damit der Grad des Knoten insgesamt ungerade wird. Man betrachte die Möglichkeiten, die im Prüfercode vorkommenden Knoten auszuwählen.

Erster Fall: Es könnte 6-mal derselbe Knoten vorkommen. Dann gibt es ( 8 1) Möglichkeiten, den Knoten auszuwählen. Zweiter Fall: Es könnte ein Knoten 4-mal und ein Knoten 2-mal vorkommen. Dann gibt es 8 Möglichkeiten, den 4-mal vorkommenden Knoten auszuwählen, und 7 Möglichkeiten, den 2-mal vorkommenden Knoten auszuwählen, insgesamt also 56 Möglichkeiten, die Knoten auszuwählen. Diese können auf den 6 Positionen auf verschiedene Arten angeordnet werden, nämlich auf genau so viele Arten, wie man man 2 aus 6 Positionen unterscheidbar ohne Zurücklegen ziehen kann, also ( 6 2). Dritter Fall: Es könnten drei verschiedene Knoten je 2-mal im Prüfercode vorkommen. Dann gibt es ( ( 8 3) Möglichkeiten, diese Knoten auszuwählen. Diese können auf 6 4 ) 2)( 2 Arten angeordnet werden. Die einzelnen Fälle sind disjunkt. Mit der Summenregel ergeben sich daher ( ) ( ) ( )( )( ) 8 6 8 6 4 + 56 + = 5888 1 2 3 2 2 verschiedene Prüfercodes und damit auch 5888 mögliche Varianten, die Straßen unter diesen Zusatzbedingungen auszubauen. AUFGABE 4 (4 Punkte): Sei G = (V, E) ein zusammenhängender, nicht vollständiger Graph. Zeigen Sie, dass es drei verschiedene Knoten a, b, c V gibt mit {a, b} E und {b, c} E, aber {a, c} E. Idee: Man nehme zwei Knoten des Graphen, die nicht direkt durch eine Kante verbunden sind, und betrachte einen Pfad zwischen diesen beiden Knoten. Hat dieser Pfad nur die Länge zwei, so erfüllen die beiden gewählten Knoten und der Knoten auf dem Pfad die Bedingung. Ist der Pfad länger, betrachte man nur die ersten beiden Kanten des Pfades. Entweder erfüllen die zu diesen Kanten inzidenten Knoten die geforderte Bedingung, oder es gibt eine weitere Kante, mit der die beiden Kanten einen Kreis der Länge 3 bilden. Dann kann man die ersten beiden Kanten in dem Pfad durch die dritte Kreiskante ersetzen und den neuen Pfad betrachten, bis man Knoten erhält, die die Bedingung erfüllen. Dies passiert spätestens dann, wenn der Pfad auf die Länge 2 gekürzt worden ist. Die Idee lässt sich wie folgt umsetzen: Es ist G = (V, E) zusammenhängend, aber nicht vollständig. Also existieren zwei Knoten u, v V mit {u, v} / E. Wähle diese beiden nicht adjazenten Knoten. Da G zusammenhängend ist, existiert ein Pfad von u nach v. Sei P = (u 1,..., u k ) der kürzeste Pfad von u 1 = u nach u k = v. Dann gilt {u 1, u 2 } E und {u 2, u 3 } E, da beide Kanten Teil des Pfades sind. Außerdem gilt {u 1, u 3 } / E. Denn wäre {u 1, u 3 } E so wäre (u 1, u 3,..., u k ) ein kürzerer Pfad von u nach v als P, was einen Widerspruch zur Annahme bildet, dass P kürzester Pfad ist. Also erfüllen a = u 1, b = u 2 und c = u 3 die geforderte Bedingung.