Tutorium 7 - GBI Tut Philipp Oppermann

Werbung
Grundbegriffe der Informatik
Tutorium 7
Tutorium Nr. 32
Philipp Oppermann | 18. Dezember 2013
KARLSRUHER INSTITUT FÜR TECHNOLOGIE
KIT – Universität des Landes Baden-Württemberg und
nationales Forschungszentrum in der Helmholtz-Gemeinschaft
www.kit.edu
Outline/Gliederung
1
Zum 6. Übungsblatt
2
Repräsentation von Graphen
3
Erreichbarkeit und Wegematrix
4
Warshall-Algorithmus
Zum 6. Übungsblatt
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
2/8
Zum 6. Übungsblatt
kurze Gegenbeispiele!
bitte aufs nächste Blatt schreiben, ob ihr den Übungsschein braucht
Zum 6. Übungsblatt
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
3/8
Repräsentation von Graphen
Sei G = (V , E ) ein Graph, n = |V |
Adjazenzliste
Für jeden Knoten wird eine Liste der adjazenten Knoten gespeichert.
Adjazenzmatrix
(
n × n Matrix A mit Aij =
1,
falls (i , j ) ∈ E
0,
sonst
Wegematrix
n × n Matrix W mit:
(
1, falls (i , j ) ∈ E ∗
Wij =
0, sonst
Zum 6. Übungsblatt
(
=
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
1,
falls ∃ Pfad von i nach j
0,
sonst
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
4/8
Rechnen mit Adjazenzmatrizen
A2 gibt für jedes A2ij an, wie viele Pfade der Länge 2 von i nach j
existieren
A0 = I (Einheitsmatrix) =⇒ zu jedem Knoten v existiert genau ein
Pfad der Länge 0 von v nach v
An gibt für jedes Anij an, wie viele Pfade der Länge n von i nach j
existieren
Zum 6. Übungsblatt
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
5/8
Erreichbarkeit und Wegematrix
Sei G = (V , E ) ein Graph, n = |V |
Wie lang ist ein Pfad in G maximal? =⇒ unendlich (mit Zyklen)
Gibt es einen wiederholungsfreien Pfad der Länge n in G, der kein
Zykel ist? =⇒ nein
Wir wissen: E ∗ =
∞
S
E i . Muss es wirklich bis ∞ sein?
i =0
=⇒ nein, bis n-1 reicht (da jeder Pfad mit Länge ≥ n Wiederholungen enthält oder ein Zykel ist, der durch E 0 abgedeckt ist)
gilt auch E ∗ =
3n
S
Ei?
=⇒ ja, ∀k ≥ n − 1 :
E∗ =
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Ei
i =0
i =0
Zum 6. Übungsblatt
k
S
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
6/8
Erreichbarkeit und Wegematrix
Signum


1,
sgn : R → R : sgn(x ) = 0,


−1,
falls x > 0
falls x = 0
falls x < 0
Berechnung der Wegematrix
W = sgn
k
X
!
k
A
∀k ≥ n − 1
i =0
„alle Pfade der Länge 1 + alle der Länge 2 + . . . + alle der Länge k.
Und anschließend alle Einträge ≥ 1 auf 1 setzen.“
ungefähr n5 Operationen (nicht sehr effektiv)
Zum 6. Übungsblatt
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
7/8
Warshall-Algorithmus
for i ← 0 to n − 1 do
for j ← 0(
to n − 1 do
1
falls i = j
Wij ←
Aij falls i 6= j
end for
end for
for k ← 0 to n − 1 do
for i ← 0 to n − 1 do
for j ← 0 to n − 1 do
Wij ← max (Wij , min(Wik , Wkj ))
end for
end for
end for
n2 + 2n3 Operationen
Zum 6. Übungsblatt
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 32
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
18. Dezember 2013
8/8
Herunterladen