Kapitel 1: Motivation / Grundlagen Gliederung 1. Motivation

Werbung
Kapitel 1: Motivation / Grundlagen
Gliederung
1.
2.
3.
4.
5.
6.
Motivation / Grundlagen
Sortier- und Selektionsverfahren
Paradigmen des Algorithmenentwurfs
Ausgewählte Datenstrukturen
Algorithmische Geometrie
Umgang mit algorithmisch schwierigen Problemen
•
•
1/2, Folie 1
© 2012 Prof. Steffen Lange
Laufzeit von Algorithmen / Programmen
Binärbäume
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Begriffe
... der Begriff Binärbaum sollte klar sein
... Bäume, in denen jeder Knoten keinen oder zwei Söhne hat
... Knoten mit zwei Söhnen nennt man innere Knoten
... alle anderen Knoten nennt man Blätter
1/2, Folie 2
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Interessierende Kennzahlen eines Binärbaums
•
•
•
•
die Anzahl der Knoten im Binärbaum
die Anzahl der inneren Knoten im Binärbaum
die Anzahl der Blätter im Binärbaum
die Tiefe des Binärbaums (d.h. die Anzahl der inneren Knoten auf
einem maximalen Pfad von der Wurzel zu einem Blatt)
... und die Zusammenhänge zwischen diesen Kennzahlen
1/2, Folie 3
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Anzahl der Knoten, inneren Knoten und Blätter
... dieser Binärbaum hat 7 Knoten
... davon sind 3 innere Knoten und 4 Blätter
1/2, Folie 4
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Allgemeiner Zusammenhang
Jeder Binärbaum B hat n innere Knoten und n+1 Blätter.
... das beweist man am besten induktiv
B:
B1
B2
1/2, Folie 5
© 2012 Prof. Steffen Lange
-
•
für diesen Binärbaum B ist alles klar
•
der Teilbaum B1 habe n1 innere Knoten und
n1+1 Blätter und der Teilbaum B2 habe n2 innere
Knoten und n2+1 Blätter
•
also hat der Binärbaum B dann (n1+n2+1) innere
Knoten und (n1+n2+2) Blätter
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Anzahl der Knoten / Blätter und maximale Pfadlänge
... dieser Binärbaum hat 7 Knoten und 4 Blätter
... dieser Binärbaum hat die Tiefe 2 bzw. die maximale
Pfadlänge 2
1/2, Folie 6
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Allgemeiner Zusammenhang
Jeder Binärbaum B mit mindestens 2k Blättern hat eine Tiefe größer gleich k.
... das beweist man wieder induktiv
B:
B1
B2
1/2, Folie 7
© 2012 Prof. Steffen Lange
-
•
für diesen Binärbaum ist alles klar
•
wenn der Binärbaum B mindestens 2k+1 Blätter hat,
so hat einer der beiden Teilbäume B1 und B2
mindestens 2k (= 2k+1 /2) Blätter
•
also hat dieser Teilbäume einen Pfad, der
mindestens k innere Knoten enthält und damit gibt
es im Binärbaum B einen Pfad mit k+1 inneren
Knoten
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Eine hilfreiche Beobachtung (Beispiel)
... dieser Binärbaum hat nur Pfade der Länge 2
... dieser Binärbaum hat 4 Blätter
1/2, Folie 8
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Eine hilfreiche Beobachtung
Jeder Binärbaum B, in dem alle Pfade die Länge k haben, hat 2k Blätter.
... das beweist man auch induktiv
B:
B1
Blattebene
1/2, Folie 9
© 2012 Prof. Steffen Lange
-
•
für diesen Baum ist alles klar
•
der Binärbaum B1 hat nur Pfade der Länge k und
damit 2k Blätter
•
im Binärbaum B wird jedes Blatt von B1 durch
einen inneren Knoten mit zwei Söhnen ersetzt und
damit muss B genau 2k+1 Blätter haben
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Ein wichtiger Zusammenhang
Jeder Binärbaum B mit n Blättern hat eine Tiefe größer gleich log(n).
1/2, Folie 10
•
falls n = 2k gilt, ist alles klar (es gilt log(n) = k)
•
sonst sei k so gewählt, dass 2k < n < 2k+1 gilt (also ist log(n) = k+1)
•
Annahme: im Binärbaum B gibt es keinen Pfad der Länge k+1
•
dann kann es in B nur Pfade geben, die maximal k inneren Knoten haben,
und deshalb hat B maximal 2k Blätter
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Kapitel 1: Motivation / Grundlagen
Binärbäume
 Eine einfache Folgerung
Jeder Binärbaum B mit n Knoten hat eine Tiefe größer gleich log(n)-1.
... überlegen Sie sich selbst, wie man das beweist
1/2, Folie 11
© 2012 Prof. Steffen Lange
-
HDa/FbI
-
Algorithmik
Herunterladen