Institut für Theoretische Informatik Diskrete Mathematik Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAAAAAAAAAAA
Kapitel 2: Graphentheorie
Hamiltonkreise & Eulertouren Betrachte einen Graphen G=(V,E): Hamiltonkreis: Ein Hamiltonkreis ist ein Kreis, der jeden Knoten des Graphen genau einmal enthält. Eulertour: Eine Eulertour ist ein geschlossener Weg, der jede Kante des Graphen genau einmal enthält.
Hamilton Sir William Rowan Hamilton (1805 - 1865), The Icosian Game : Sir William Rowan Hamilton (1805 - 1865), Irischer Mathematiker, Physiker und Astronom.
Hamiltonkreis - Beispiele kein Hamiltonkreis …
NP-Vollständigkeit Karp (1972) Das Problem Gegeben ein Graph G=(V,E), enthält G einen Hamiltonkreis? ist NP-vollständig. P = effizient entscheidbare Probleme NP = (einseitig) effizient verifizierbare Probleme P = NP → 1 Million US-$ (Clay-Foundation) ?
Hamiltonkreise im Gitter Gibt es einen Hamiltonkreis? Nein!
Hamiltonkreise im Gitter Satz: Ein n x m Gitter enthält genau dann einen Hamiltonkreis, wenn nm gerade ist.
Hamiltonkreise & Eulertouren Betrachte einen Graphen G=(V,E): Hamiltonkreis: Ein Hamiltonkreis ist ein Kreis, der jeden Knoten des Graphen genau einmal enthält. Eulertour: Eine Eulertour ist ein geschlossener Weg, der jede Kante des Graphen genau einmal enthält.
Euler Leonhard Euler (1707 - 1783) Euler-Gedenktafel in Riehen
Königsberger Brückenproblem Gibt es einen Spaziergang, bei dem jede Brücke genau einmal verwendet wird?
Eulertour Definition: Ein Graph G=(V,E) heisst eulersch, wenn es eine Eulertour gibt, d.h. einen Weg, der jede Kante des Graphen genau einmal enthält und dessen Anfangs- und Endknoten identisch sind. Satz: Für einen zsghd. Graph G=(V,E) gilt: G eulersch ÜÞ alle Knoten haben geraden Grad
Kapitel 2.5: Graphen und lineare Algebra, Gerichtete Graphen
Adjazenzmatrix Für einen Graphen G=(V,E) ist die Adjazenzmatrix AG definiert durch: Beispiel:
Adjazenzmatrix - Eigenschaften AG ist symmterisch. AG hat Nullen auf der Hauptdiagonalen Satz: Der Eintrag aijk der i-ten Zeile und j-ten Spalte der Matrix AGk zählt genau die Anzahl Wege der Länge (genau) k in G von i nach j. [Annahme: V = {1,…,|V|}.]
Anzahl Wege - Beispiel
Gerichtete Graphen Definition: Ein gerichteter Graph, auch Digraph, ist ein Tupel D=(V,A), wobei V eine (endliche) Menge von Knoten ist und A Í V x V eine Menge von gerichteten Kanten (engl. arcs).
Aus-Grad: deg-(v) = | {xV | (v,x) A } | Gerichtete Graphen Definitionen: gerichteter Graph D=(V,A), vV Aus-Grad: deg-(v) = | {xV | (v,x) A } | Ein-Grad: deg+(v) = | {xV | (x,v) A } | Satz: Für jeden gerichteten Graphen D=(V,A) gilt:
Gerichtete Graphen gerichteter Weg … gerichteter Kreis … zugrundeliegender ungerichteter Graph … schwach zshgd ÜÞ zugrundeliegender Graph zshgd. stark zshgd ÜÞ " x,y ÎV : $ gerichteter x-y-Pfad
Zusammenhang
Beispiel Betrachten Folgen der Länge n über dem Alphabet {0,1}, die keine zwei aufeinanderfolgende Einsen enthalten:
Azyklische Graphen Definition: Ein gerichteter Graph D=(V,A) heisst azyklisch, wenn er keinen gerichteten Kreis enthält. Satz: Für jeden azyklischen, gerichteten Graph (DAG) existiert eine topologische Sortierung, d.h. eine Nummerierung der Knoten, so dass alle Kanten vom kleineren zum grösseren Knoten zeigen.
Topologische Sortierung - Beispiel