![Page 1: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/1.jpg)
3.5 Gerichteter Pfad
Definition 292Eine Folge (u0, u1, . . . , un) mit ui ∈ V fur i = 0, . . . , n heißt gerichteter Pfad, wenn(
∀i ∈ {0, . . . , n− 1})[
(ui, ui+1) ∈ A].
Ein gerichteter Pfad heißt einfach, falls alle ui paarweise verschieden sind.
Diskrete Strukturen 3.5 Gerichteter Pfad 475/571c©Ernst W. Mayr
![Page 2: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/2.jpg)
3.6 Gerichteter Kreis
Definition 293Ein gerichteter Pfad (u0, u1, . . . , un) heißt gerichteter Kreis, wenn u0 = un.Der gerichtete Kreis heißt einfach, falls u0, u1, . . . , un−1 alle paarweise verschieden sind.
Diskrete Strukturen 3.6 Gerichteter Kreis 476/571c©Ernst W. Mayr
![Page 3: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/3.jpg)
3.7 dag
Definition 294Ein Digraph, der keinen gerichteten Kreis enthalt, heißt d irected acyclic g raph, kurzdag.In einem dag heißen Knoten mit In-Grad 0 Quellen, Knoten mit Aus-Grad 0 Senken.Eine Nummerierung i : V → {1, . . . , |V |} der Knoten eines dags heißt topologisch,falls fur jede Kante (u, v) ∈ A gilt:
i(u) < i(v).
Diskrete Strukturen 3.7 dag 477/571c©Ernst W. Mayr
![Page 4: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/4.jpg)
Beispiel 295
1
2
3
4
5
6 7
8
9
10
11
Diskrete Strukturen 3.7 dag 478/571c©Ernst W. Mayr
![Page 5: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/5.jpg)
Algorithmus zur topologischen Nummerierung:
while V 6=60 do
nummeriere eine Quelle mit der nachsten Nummerstreiche diese Quelle aus V
od
Diskrete Strukturen 3.7 dag 479/571c©Ernst W. Mayr
![Page 6: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/6.jpg)
3.8 Zusammenhang
Definition 296Ein Digraph heißt zusammenhangend, wenn der zugrundeliegende ungerichtete Graphzusammenhangend ist.
3.9 Starke Zusammenhangskomponenten
Definition 297Sei G = (V,A) ein Digraph. Man definiert eine Aquivalenzrelation R ⊆ V × V wiefolgt:
uRv ⇐⇒{
es gibt in G einen gerichteten Pfad von u nach vund einen gerichteten Pfad von v nach u.
Die von den Aquivalenzklassen dieser Relation induziertenTeilgraphen heißen die starken Zusammenhangskomponenten von G.
Diskrete Strukturen 3.9 Starke Zusammenhangskomponenten 480/571c©Ernst W. Mayr
![Page 7: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/7.jpg)
Beispiel 298
Diskrete Strukturen 3.9 Starke Zusammenhangskomponenten 481/571c©Ernst W. Mayr
![Page 8: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/8.jpg)
4. Durchsuchen von Graphen
Gesucht sind Prozeduren, die alle Knoten (eventuell auch alle Kanten) mindestenseinmal besuchen und moglichst effizient sind.
4.1 Tiefensuche, Depth-First-Search
Sei G = (V,E) ein ungerichteter Graph, gegeben als Adjazenzliste.
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 482/571c©Ernst W. Mayr
![Page 9: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/9.jpg)
Algorithmus Tiefensuche (DFS):
while ∃ unvisited v dor := pick (random) unvisited nodepush r onto stackwhile stack 6= ∅ do
v := pop top elementif v unvisited then
mark v visitedpush all neighbours of v onto stackperform operations DFS Ops(v)
fiod
od
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 483/571c©Ernst W. Mayr
![Page 10: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/10.jpg)
Beispiel 299
����
������AAAA @
@@@
����
����
������AAAA @
@@@
����
����������� AAAAU -
6
@@
@@I
?
����*
g1g2
g3g4 g5
g6g7
g8g9
t1
t2
t3
t4
t5
t6
t7t
8t9
BBBBBB
QQQQQQ
BBBBBB
QQQQQQ
����HH
HH
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 484/571c©Ernst W. Mayr
![Page 11: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/11.jpg)
Beobachtung: Die markierten Kanten bilden einen Spannbaum:
����
������AAAA @
@@@
����
����
������AAAA @
@@@
����
�����
������ AAAAU -
6
@@
@@I
?
����*
g1g2
g3g4 g5
g6g7
g8g9
t1
t2
t3
t4
t5
t6
t7t
8t9
BBBBBB
QQQQQQ
BBBBBB
QQQQQQ
����HH
HH
�Ruckwartskante
9g8g6g 7g
5g4g3g
2g 1g
��@@
sss sss
sss
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 485/571c©Ernst W. Mayr
![Page 12: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/12.jpg)
Folge der Stackzustande
1 287
398187
49298187
539298187
986439298187
235864392981pp ppppp
765216439298pp ppppp
681652164392pp ppppp
785816521643pp ppppp
hhhhhhhhhhhhhhh
66
h? ? ? ? ? ? ? ? ?
visitedvisited
Stack:
: oberstes Stackelement: schon besuchte Knoten
: Nachbarn
Zustand:a) b) c) d) e) f)
g)h) i)
j)
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 486/571c©Ernst W. Mayr
![Page 13: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/13.jpg)
Wir betrachten den Stackzustand:Im Zustand g) sind die Elemente 2, 3 und 5 als visited markiert (siehe Zustande b), c)und e)). Deswegen werden sie aus dem Stack entfernt, und das Element 8 wird zumobersten Stackelement. Im Zustand j) sind alle Elemente markiert, so dass eins nachdem anderen aus dem Stack entfernt wird.
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 487/571c©Ernst W. Mayr
![Page 14: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/14.jpg)
algorithm advanced DFS
void proc DFSvisit(node v )
visited[v ] := true
pre[v ] := ++precount
for all u ∈ adjacency list[v ] do
if not visited[u ] then
type[(v ,u )] := ’Baumkante’
parent[u ] := v
DFSlevel[u ] := DFSlevel[v ]+1
DFSvisit(u )
elsif u 6= parent[v ] then
type[(v ,u )] := ’Ruckwartskante’
fi
od
post[v ] := ++postcount
end proc
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 488/571c©Ernst W. Mayr
![Page 15: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/15.jpg)
Fortsetzungco Initialisierung: oc
for all v ∈ V do
visited[v ] := false
pre[v ] := post[v ] := 0
od
precount := postcount := 0
for all v ∈ V do
if not visited[v ] then
DFSlevel[v ] := 0
parent[v ] := null
DFSvisit(v )
fi
od
end
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 489/571c©Ernst W. Mayr
![Page 16: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/16.jpg)
Beispiel 300 (gestrichelt sind Ruckwartskanten)DFS-Level:
Praorder-Nummer:
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 490/571c©Ernst W. Mayr
![Page 17: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/17.jpg)
Beispiel (Fortsetzung)
Postorder-Nummer:
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 491/571c©Ernst W. Mayr
![Page 18: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/18.jpg)
Beobachtung: Die Tiefensuche konstruiert einen Spannwald des Graphen. Die Anzahlder Baume entspricht der Anzahl der Zusammenhangskomponenten von G.
Satz 301Der Zeitbedarf fur die Tiefensuche ist (bei Verwendung von Adjazenzlisten)
O(|V |+ |E|
).
Beweis:Aus Algorithmus ersichtlich.
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 492/571c©Ernst W. Mayr
![Page 19: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/19.jpg)
Tiefensuche im Digraphen: Fur gerichtete Graphen verwendet man obigenAlgorithmus, wobei man die Zeilen
elsif u 6= parent[v ] then
type[(v ,u )] := ’Ruckwartskante’
fi
ersetzt durch
elsif pre[u ] > pre[v ] then
type[(v ,u )] := ’Vorwartskante’
elsif post[u ] 6= 0 then
type[(v ,u )] := ’Querkante’
else
type[(v ,u )] := ’Ruckwartskante’
fi
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 493/571c©Ernst W. Mayr
![Page 20: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/20.jpg)
Beispiel 302 (Praorder-Nummer)
11
13
14
12
15
1
2
3
4 5 7
6
8 10
9
Querkante
Vorwärtskante
Rückwärtskante
Baumkante
Diskrete Strukturen 4.1 Tiefensuche, Depth-First-Search 494/571c©Ernst W. Mayr
![Page 21: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/21.jpg)
4.2 Breitensuche, Breadth-First-Search
Sei G = (V,E) ein ungerichteter Graph, gegeben mittels Adjazenzlisten.BFS-Algorithmus:
while ∃ unvisited v dor := pick (random) unvisited nodepush r into (end of) queuewhile queue 6= ∅ do
v := remove front element of queueif v unvisited then
mark v visitedappend all neighbours of v to end of queueperform operations BFS Ops(v)
fiod
od
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 495/571c©Ernst W. Mayr
![Page 22: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/22.jpg)
Beispiel 303
����
������
BBBBBB
AAAA
BBBBBB
QQQQQQ
HHH
H
����
������
BBBBBB
AAAA
BBBBBB
QQQQQQ
HHHH
�����
������
BBBBBBN
AAAAU ?
BBBBBBN
QQQQQQs
HHHHj
g1g2
g6g9 g8
g5g3
g4g7
t1
t2
t3
t4
t5
t6
t7t
8t9
QQQQQQ
@@
@@
����
����
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 496/571c©Ernst W. Mayr
![Page 23: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/23.jpg)
Beobachtung: Die markierten Kanten bilden einen Spannbaum:
����
������
BBBBBB
AAAA
BBBBBB
QQQQQQ
HHHH
����
������
BBBBBB
AAAA
BBBBBB
QQQQQQ
HHHH
�����������
BBBBBBN
AAAAU ?
BBBBBBN
QQQQQQs
HHHHj
g1g2
g6g9 g8
g5g3
g4g7
t1
t2
t3
t4
t5
t6
t7t
8t9
QQQQQQ
@@@@
����
����
p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p pp p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p
p p p p p p p p p p p p p p p p pp p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p
p p p p p p p p pHHY �
��
Querkanten
1g2g 3g 4g
5g6g7g8g
9g
������
BBB
HHHHHH
JJJ
JJJ
JJJ
ss s s
ss sss
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 497/571c©Ernst W. Mayr
![Page 24: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/24.jpg)
Folge der Queuezustande
1
2 8 7
8 7 1 8 9 3
7 1 8 9 3 1 2 6 7 5
1 8 9 3 1 2 6 7 5 1 8 6
3 1 2 6 7 5 1 8 6 5 3 2
1 2 6 7 5 1 8 6 5 3 2 4 9 2
7 5 1 8 6 5 3 2 4 9 2 7 8 5
1 8 6 5 3 2 4 9 2 7 8 5 6 8 9 4
9 2 7 8 5 6 8 9 4 5 3 �
�
�
�
�
�
�
�
�
�
�
�
�
�
jj
jjj
jjjjjjjjjjjjjjjjj
visited
visited
visited
visited
visited
Zustand:Queue:
(a
(b
(c
(d
(e
(f
(g
(h
(i
(j
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 498/571c©Ernst W. Mayr
![Page 25: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/25.jpg)
Wir betrachten die Folge der Queuezustande. Wiederum bedeutet die Notation:
i : vorderstes Queue-Element
: schon besuchte Knoten
: Nachbarn
Im Zustand e) sind die Elemente 1 und 8 als visited markiert (siehe Zustande a) undc)). Deswegen werden sie aus der Queue entfernt, und so wird das Element 9 dasvorderste Queueelement. Das gleiche passiert in den Zustanden g), h) und i). ImZustand j) sind alle Elemente markiert, so dass sie eins nach dem anderen aus derQueue entfernt werden.
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 499/571c©Ernst W. Mayr
![Page 26: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/26.jpg)
algorithm advanced BFS
for all v ∈ V do
touched[v ] := false
bfsNum[v ] := 0
od
count := 0
queue := 60for all v ∈ V do
if not touched[v] then
bfsLevel[v ] := 0
parent[v ] := null
queue .append(v )
touched[v ] := true
while not empty(queue ) do
u := remove first(queue )
bfsNum[u] := ++count
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 500/571c©Ernst W. Mayr
![Page 27: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/27.jpg)
Fortsetzungfor all w ∈ adjacency list[u ] do
if not touched[w ] then
type[(u ,w )] := ’Baumkante’
parent[w ] := u
bfsLevel[w] := bfsLevel[u]+1
queue .append(w )
touched[w] := true
elsif not w = parent[u] then
type[(u ,w )] := ’Querkante’
fi
od
od
fi
od
end
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 501/571c©Ernst W. Mayr
![Page 28: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/28.jpg)
Beobachtungen:
1 Die Breitensuche konstruiert einen Spannwald.
2 Der Spannwald besteht genau aus den Baumkanten im Algorithmus.
3 (u, v) ist Querkante⇒∣∣bfsLevel(u)− bfsLevel(v)
∣∣ ≤ 1
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 502/571c©Ernst W. Mayr
![Page 29: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/29.jpg)
Satz 304Der Zeitbedarf fur die Breitensuche ist (bei Verwendung von Adjazenzlisten)
O(|V |+ |E|
).
Beweis:Aus Algorithmus ersichtlich.
Diskrete Strukturen 4.2 Breitensuche, Breadth-First-Search 503/571c©Ernst W. Mayr
![Page 30: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/30.jpg)
4.3 Matroide
Definition 305Sei S eine endliche Menge, U ⊆ 2S eine Teilmenge der Potenzmenge von S. Dannheißt M = (S,U) ein Matroid und jedes A ∈ U heißt unabhangige Menge, falls gilt:
1 ∅ ∈ U2 A ∈ U, B ⊆ A =⇒ B ∈ U3
A,B ∈ U, |B| = |A|+ 1
=⇒ (∃x ∈ B \A)[(A ∪ {x}
)∈ U
]Jede bezuglich ⊆ maximale Menge in U heißt Basis.Nach 3. haben je zwei Basen gleiche Kardinalitat. Diese heißt der Rang r(M) desMatroids.
Diskrete Strukturen 4.3 Matroide 504/571c©Ernst W. Mayr
![Page 31: De nition 292 u ;u ;:::;un mit ui 2V f ur i= 0;:::;n h i ... · 3.7 dag De nition 294 Ein Digraph, der keinen gerichteten Kreis enth alt, heiˇt directed acyclic graph, kurz dag](https://reader035.vdokument.com/reader035/viewer/2022071114/5fead552a29bfb688c2f96f3/html5/thumbnails/31.jpg)
Beispiel 306
Linear unabhangige Vektoren in einem Vektorraum.
Beispiel 307
G sei folgender Graph:
S = Menge der Kanten von GU = Menge der kreisfreien Teilmengen von S
Diskrete Strukturen 4.3 Matroide 505/571c©Ernst W. Mayr