Amortisierte Analyse: Buchhaltermethode

Slides:



Advertisements
Ähnliche Präsentationen
Kap. 7 Sortierverfahren Kap. 7.0 Darstellung, Vorüberlegungen
Advertisements

Datenstrukturen und Algorithmen
Man bestimme den „minimalen aufspannenden Baum“ des Graphen.
Minimum Spanning Tree: MST
Prof. Dr. S. Albers Prof.Dr.Th Ottmann
Spezialvorlesung Suchalgorithmen Thema: Einzelzustandsraumsuche Stefan Edelkamp.
GIN2 – 2. Vorlesung, SS04 Prof. Dr. Wolfram Conen
Kapitel 6: Klassifizierung von Sortiertechniken
Prioritätswarteschlangen
3. Kapitel: Komplexität und Komplexitätsklassen
Kapitel 5. Stacks und Queues
Synonyme: Stapel, Keller, LIFO-Liste usw.
Gliederung Motivation / Grundlagen Sortierverfahren
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (16 – Fibonacci-Heaps) T. Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (23 – Sortieren vorsortierter Daten) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (25 – Fibonacci-Heaps – Analyse) T. Lauer.
Prof. Dr. S. Albers Prof. Dr. Th. Ottmann
Halbzeit: Kurze Wiederholung
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (24 – Fibonacci-Heaps) T. Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen 09 - Weitere Sortierverfahren Heapsort-Nachtrag Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (11-1 –Selbstanordnende lineare Listen) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27-Selbstanordnende lineare Listen) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (12 – Dynamische Tabellen) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (14 Amortisierte worst-case-Analyse Beispiel: Bitwechselkosten eines Dualzählers) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Fibonacci-Heaps – Analyse) Tobias Lauer.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 13 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
WS Algorithmentheorie 15 – Fibonacci-Heaps Tobias Lauer.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Fibonacci-Heaps) Tobias Lauer.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 12 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
WS Algorithmentheorie 15 – Fibonacci-Heaps Tobias Lauer.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
WS03/041 Binomial Queues Prof. Dr. S. Albers Prof.Dr.Th Ottmann.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 11 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Heaps und Priority Queues
Minimum Spanning Tree: MST
Kapitel 2: Datenstrukturen
Splay Trees Von Projdakov Benjamin.
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Kapitel 5: Von Datenstrukturen zu Abstrakten Datentypen
Grundlagen der Algorithmen und Datenstrukturen Kapitel
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Höhere Datenstrukturen
Externspeicher- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen AK5: Ausgewählte Algorithmen Ak der Algorithmik.
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 2 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 1 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Tanya Braun (Übungen) sowie viele Tutoren.
Seminar im Fach Geoinformation IV
Vorlesung AVL-Bäume/Algorithmen-
Vorlesung AVL-Bäume/Algorithmen-
Laufzeitverhalten beim Sortieren
ADS – Vorlesung Prof. Dr. Wolfram Conen
GIN2 – Vorlesung, SS04 Prof. Dr. Wolfram Conen
Christian Scheideler WS 2008
Christian Scheideler WS 2008
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen
 Präsentation transkript:

Amortisierte Analyse: Buchhaltermethode Fibonacci Heaps Amortisierte Analyse: Buchhaltermethode

Fibonacci Heaps Priority Queue Operationen Fib. Heap Bin. Heap Insert O(1) O(log n) ExtractMin O(log n) O(log n) DecreaseKey O(1) O(log n)

Buchhaltermethode Den Operationen werden verschiedene Kosten zugeordnet (Amortisierte Kosten) müssen nicht mit den Realen Kosten übereinstimmen Objekte der Datenstruktur haben Konten auf denen Guthaben gutgeschrieben werden kann

Buchhaltermethode Vergleich zwischen Amort. Kosten und tatsächlichen Kosten Wenn Amort. Kosten höher sind kann der Überschuss an Objekten als Guthaben zugeordnet werden sonst können Op. mit dem Guthaben bezahlt werden Gesamt Guthaben darf nie negativ werden!!!

Anwendung: Vorüberlegung ExtractMin hängt von der Anzahl der Verschmelzungsoperationen (worst case: O(n)) von der Maximalen Anzahl der Kinder (beschränkt durch O(log n) nach nach Lemma F3 Kap. 1.1. der Vorlesung) DecreaseKey hängt von der Anzahl der Trennungsoperationen ab. ( worst case: O(n)) Insert O(1)

Anwendung: Idee Gebe jedem Wurzelknoten 1$ um alle Verschmelzoperationen von ExtractMin zu bezahlen Jeder Markierter Knoten erhält 2$ 1$ zum abtrennen 1$, da Markierte Knoten später Wurzelknoten werden

Analyse: Insert Kosten insert konstant 1$ für Wurzelknoten 1$ Insert = O(1) + O(1) = O (1)

Analyse: DecreaseKey Kosten DecreaseKey konstant 1$ für markierten Knoten 2$ neuer Wurzelknoten 1$ 1$ * #Trennungen (Wird vom Guthaben bezahlt) decreaseKey = O(1)+2*O(1)+O(1) = O(1)

Analyse: ExtractMin Kosten Konstant 1$ Markierung der Kinder 1$ * MaxKinder(n) 1$ * #Verschmelzungen (Wird vom Guthaben bezahlt) ExtractMin = O(1)+O(1)*maxKinder(n) = O(1)+O(1)*O(log n) (wegen Lem. F3) = O(log n)