Bäume - Technische Universität München

Werbung
WS 2013/14
Diskrete Strukturen
Prof. Dr. J. Esparza
Lehrstuhl für Grundlagen der
Softwarezuverlässigkeit und theoretische
Informatik
Fakultät für Informatik
Technische Universität München
http://www7.in.tum.de/um/courses/ds/ws1314
Kapitel IV – Graphentheorie
• Graphentheorie
– Grundlagen
– Bäume
– Euler- und Hamiltonkreise
– Planarität und Färbungen
– Matchings
2
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Bäume
Definition: Ein ungerichteter Graph heißt Baum,
falls G zusammenhängend und kreisfrei ist.
Die Knoten von mit Grad 1 heißen Blätter
(leaves).
Alle anderen Knoten heißen innere Knoten.
3
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Bäume mit höchstens 5 Knoten (bis auf
Isomorphie)
4
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel III – Graphen; Bäume
• Wälder
Definition: Ein Graph, dessen (Zusammenhangs-)
Komponenten jeweils Bäume sind, heißt Wald.
5
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Satz: Jeder Baum = ( , ) mit
≥ 2enthält
mindestens zwei Blätter.
Beweis (informell): Nehme eine beliebige Kante
und laufe nach „links“ und “rechts“ so lang wie
möglich. Da man nicht in einen Kreis geraten kann
endet man irgendwann in zwei verschiedenen
Blättern.
□
6
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Satz: Ist = ( , )ein Baum mit
≥ 2Knoten
und ∈ ein Blatt, so ist der Graph [ ∖ { }]
ebenfalls ein Baum.
Beweis: Durch Wegnahme eines Blattes bleibt der
Baum kreisfrei. Da Pfade zwischen beliebigen
Knoten und mit ≠ ≠ erhalten bleiben,
ist [ ∖ { }]auch zusammenhängend.
□
7
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Definition: Ein Teilgraph = ( ′, ′)von
= ( , ) heißt Spannbaum von , falls
Baum ist und ′ = .
8
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
ein
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Satz: Jeder zusammenhängende Graph = ( , )
enthält mindestens einen Spannbaum.
Beweis: Durch Induktion über | |.
Basis: | | = 0. Dann ist ein Baum und auch ein
Spannbaum.
9
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Schritt:
≥ 1. Wir betrachten zwei Fälle.
Fall 1. ist ein Baum. Dann ist auch Spannbaum.
Fall 2. ist kein Baum. Dann enthält einen Kreis.
Entferne eine beliebige Kante des Kreises. Das
Ergebnis ′ ist noch zusammenhängend und
enthält einen Spannbaum (Induktionsannahme).
ist auch Spannbaum von . □
10
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Satz: Die folgenden Aussagen sind äquivalent:
(1) = ( , )ist ein Baum
(2) Je zwei Knoten , ∈ sind durch genau
einen Pfad verbunden
(3) ist zusammenhängend und | | = | | + 1.
11
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel III – Graphen; Bäume
• Eigenschaften von Bäumen
(1) ⇔ (2). hat keinen Kreis gdw. keine zwei
Knoten durch zwei verschiedene Pfade verbunden
sind .
ist zusammenhängend gdw. jede zwei Knoten
durch mindestens einen Pfad verbunden sind.
12
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel III – Graphen; Bäume
• Eigenschaften von Bäumen
(1) ⇒ (3). Sei = ( , )ein Baum. Wir zeigen
| | = | | + 1 durch Induktion über | |:
Basis: | | = 1. Dann gilt | | = 0und wir sind fertig.
Schritt:
≥ 2. Sei ein Blatt von ( hat mindestens
zwei Blätter).
Entferne sowie die Kante, die mit dem Rest von
verbindet. Sei ′ = ( ′, ′) der resultierende Baum.
Mit | ′| < | |gilt | | = | | + 1(Induktionsannahme).
Mit | | = | ′| + 1 und | | = | ′| + 1gilt | | = | | + 1.
13
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel III – Graphen; Bäume
• Eigenschaften von Bäumen
(3) ⇒ (1). Sei = ( , )zusammenhängend mit
| | = | | + 1.
enthält einen Spannbaum = ( , ).
Nach dem eben Bewiesenen gilt | | = | ′| + 1.
Aus | | = | | + 1und
=
+ 1folgt
| | = | |.
Da ′ eine Teilmenge von ist, gilt = ′.
Es folgt = . □
14
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Eigenschaften von Bäumen
Korollar: Seien = ( , )ein Baum mit
= und ( , , … , )die Gradfolge von . Es gilt:
=2
=2
−2=2 −2
15
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Mehr zu Spannbäumen
Satz: Die Anzahl aufspannender Bäume des
vollständigen Graphen mit = {1, … , } beträgt
=
.
(Achtung: die Knoten sind unterscheidbar!)
2 =1
5 = 625
8 = 262144
3 =3
6 = 1296
9 = 4782969
4 = 16
7 = 16807
10 = 10
16
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Die 16 Spannbäume des
(Wikipedia)
17
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Spannbäume
Satz (Cayley): Es gibt
markierte Bäume mit n
Knoten.
Beweis: Wir definieren eine Abbildung (Prüfer-Codes)
von der Menge der markierten Bäume mit Knoten in
die Menge 1, … ,
(siehe die nächsten Folien).
Wir zeigen, dass diese Abbildung eine Bijektion ist
(siehe Lemma).
Es folgt, dass die Anzahl der markierten Bäumen gleich
| 1, … ,
|=
ist. □
18
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Prüfer-Codes (Heinz Prüfer 1896-1934).
Eingabe: Baum
= ( , ) mit
= 1, 2, … ,
,
≥ 2.
Wiederhole bis | | = 2:
Sei ∈ das kleinste Blatt von .
Sei ∈ der einzige Nachbar von in .
Setze ≔ ∖ { } und ≔ ∖ , .
Gebe aus. (Achtung: ,nicht !)
Ausgabe: Folge ( , … ,
), genannt Prüfer-Code von .
19
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Prüfer-Codes
Beispiel:
http://mathworld.wolfram.com/PrueferCode.html
1
6
4
3
2
5
7
8
20
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
(1,2,1,3,3,5)
Kapitel IV – Graphen; Bäume
• Prüfer-Codes
Beispiel:
http://mathworld.wolfram.com/PrueferCode.html
21
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Prüfer-Codes
Lemma: Zu einem gegebenen Prüfer-Code = ( , … ,
)
mit Elementen aus [n] = {1, … , }gibt es einen eindeutigen
markierten Baum mit Knotenmenge [ ].
Beweis: Durch Induktion über die Länge des Codes.
Basis: = 2. Es gibt genau einen Baum mit Knotenmenge 1,2 .
Schritt: > 2. Das erste Blatt , das gepflückt wurde, ist der
kleinste Knoten in
∖ { ,…,
}.
Mit der Ind.Vor. gibt es einen eindeutigen Baum
=( , )
für = ( , … ,
).
Es gilt
=
∪
, ∪ ,
.□
22
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Wurzelbäume
Definition: Ein Wurzelbaum (rooted tree) ist ein
Tupel ( , )wobei = ( , )ein Baum ist und
∈ ein Knoten, den man auch als Wurzel des
Baumes bezeichnet.
– Da es in einem Baum zwischen je zwei Knoten genau
einen Pfad gibt, gibt es in einem Wurzelbaum von
jedem Knoten genau einen Pfad zur Wurzel.
23
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Wurzelbäume
Beispiel:
o
n
h
d
r
m
b
root
a
e
c
g
q
i
f
p
j
k
24
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
l
Kapitel IV – Graphen; Bäume
• Wurzelbäume
Im Bild eines Wurzelbaumes wird die Wurzel in der
Regel oben angeordnet, und die Wege werden von
der Wurzel weggerichtet betrachtet.
– Wurzelbäume dienen zur
graphischen Darstellung
hierarchischer Strukturen,
z.B. Vererbungen, Stammbäume,
grammatikalische Strukturen usw.
A
B
C
25
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
E
D
Kapitel IV – Graphen; Bäume
• Vorgänger, Nachfolger, Kind, Höhe
– Die Knoten entlang eines Pfades von ∈ zur Wurzel
heißen Vorgänger von .
– Der zu benachbarte Vorgänger ist der Vater bzw. die
Mutter von .
– Die Knoten ∈ , von denen der Pfad zur Wurzel den
Knoten ∈ enthält, heißen Nachfolger von .
– Die zu benachbarten Nachfolger sind die Kinder von .
– Die Höhe ℎ( ) eines Baumes ist die Länge des
längsten Pfades von der Wurzel zu einem der Blätter
(Beachte: Länge eine Pfades = Anzahl der Knoten).
26
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Binäre Wurzelbäume
– Ein Binärbaum ist ein Wurzelbaum, in dem jeder
Knoten höchstens 2 unmittelbare Nachfolger hat.
– Ein vollständiger Binärbaum ist ein Binärbaum, in dem
jeder innere Knoten genau zwei unmittelbare
Nachfolger hat und alle Blätter denselben Abstand zur
Wurzel haben.
Satz: Ein binärer Wurzelbäum der Höhe hat höchstens
2 − 1 Knoten und höchstens 2 Blätter. Der
vollständige Baum der Höhe hat genau 2 − 1 Knoten
und 2 Blätter.
27
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Suchbäume
• Ein Suchbaum ist ein Binärbaum mit den folgenden drei
Eigenschaften:
–Die Knotenmenge ist linear geordnet.
–Die Kinder eines inneren Knoten sind beschriftet mit:
linkes Kind, rechtes Kind.
–Für alle inneren Knoten gilt:
– Für alle Knoten im linken Unterbaum von gilt: < – Für alle Knoten u im rechten Unterbaum von v gilt: >
28
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Kapitel IV – Graphen; Bäume
• Suchbäume
29
Vorlesung Diskrete Strukturen WS 13/14
Prof. Dr. J. Esparza – Institut für Informatik, TU München
Zugehörige Unterlagen
Herunterladen