Heap Operationen Folien bitte als Vollbild-Bildschirmpräsentation (Taste F5) betrachten! Vorlesung Algorithmen und Datenstrukturen, WS10/11, C. Eckert.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmentheorie 08 – Dynamische Programmierung (1)
Advertisements

DNA-Array oder DNA-Chip
Prof. Dr. S. Albers Prof.Dr.Th Ottmann
Geometrische Datenstrukturen Haozhe Chen Aaron Richardson.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Informatik II – Kapitel 11
Rekursion vs. Iteration
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Einführung in JavaScript II
Synonyme: Stapel, Keller, LIFO-Liste usw.
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
Gestaltung von Lernprogrammen zu Algorithmen für aktives Lernen mit virtuellen Brettspielen Nils Faltin Computer Graphics.
Gliederung Motivation / Grundlagen Sortierverfahren
Sortieren mit Binären Bäumen
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (04 – Entwurfsverfahren) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (13 – Offenes Hashing) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (10 - Suchverfahren) T. Lauer.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Algorithmen und Datenstrukturen
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen 09 - Weitere Sortierverfahren Heapsort-Nachtrag Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (11-3 –Selbstanordnende lineare Listen) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Datenstrukturen
Union-Find-Strukturen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (09 - Weitere Sortierverfahren) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 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
Operationen auf verketteten Listen
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
FH-Hof Sortieren mit Binären Bäumen Richard Göbel.
Einführung in die Programmierung Wintersemester 2012/13 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Animation von Dijkstra
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Beispielanimation Heap-Sort
Animation von Dijkstra
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Einführung in die Programmierung
Informatik 1 Übung 4.
Externspeicher- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2.
Programmieren in C Sortieren, Suchen
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Algorithmen und Datenstrukturen 1 SS 2002
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Rekursion-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Prüfungsbesprechung Barbara Scheuner Vorlesung: Programmieren und Problemlösen Prof. Hans Hinterberger.
M a r c – o l i v e r p a h l Informatik II – Kapitel 12 „Sortier-Algorithmen“ Zusammenfassung des Kapitel 12 Küchlin, Weber, Einführung in die Informatik,
Algorithmen und Datenstrukturen
Controller Werkstatt updaten Werkstatt ws = werkstattarray.get(werkstattId); ws.setName(name); ws.setAnsprechpartner(ansprechpartner); ws.setTelefonnummer(telefonnummer);
Zwischenüberschrift (max. 85 Zeichen pro Zeile) Dies ist ein Fließtext mit 750 Zeichen pro Textfeld. Dies ist ein Fließtext mit 750 Zeichen pro Textfeld.
Zwischenüberschrift (max. 85 Zeichen pro Zeile) Dies ist ein Fließtext mit 750 Zeichen pro Textfeld. Dies ist ein Fließtext mit 750 Zeichen pro Textfeld.
Algorithmen und Datenstrukturen
Prüfungsbesprechung Barbara Scheuner
Christian Scheideler WS 2008
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen
Heapsort-Algorithmus
 Präsentation transkript:

Heap Operationen Folien bitte als Vollbild-Bildschirmpräsentation (Taste F5) betrachten! Vorlesung Algorithmen und Datenstrukturen, WS10/11, C. Eckert

Vorlesung Prof. C. Eckert, IT - Sicherheit, WS 02/03 Beispiel: Feld mit 10 Elementen und zugehöriger Binärbaum BUILD-MAX-HEAP (A) A 4 16 4 14 16 1 3 10 4 8 14 2 7 1 16 9 3 10 2 14 4 8 7 1 heap-größe [A] länge [A] heap-größe[A] = 10 1 for i  länge [A] /2 downto 1 do MAX-HEAPIFY (A,i) 16 4 i = 1 MAX-HEAPIFY (A, i) 2 3 l  LEFT (i) l = 2 * i = 10 l = 2 * i = 6 l = 2 * i = 8 l = 2 * i = 16 16 14 4 1 i = 2 10 3 i = 3 r  RIGHT (i) r = 2 * i + 1 = 17 r = 2 * i + 1 = 7 r = 2 * i + 1 = 9 r = 2 * i + 1 = 11 if l ≤ heap-größe [A] und A[l]  A[i] 4 5 6 7 then maximum  l else maximum  i 14 2 4 8 i = 4 16 7 1 i = 5 9 10 3 if r ≤ heap-größe [A] und A[r]  A [maximum] then maximum  r maximum = l = 6 maximum = i = 5 maximum = l = 8 maximum = r = 7 maximum = i = 8 if maximum  i 8 9 10 then vertausche A[i] A [maximum] 14 2 4 8 1 7 MAX-HEAPIFY (A, maximum) i = 8 l <= heap-größe[A]  FALSCH A[l] > A[i]  FALSCH l <= heap-größe[A] und A[l] > A[i]  WAHR maximum != i  FALSCH l <= heap-größe[A] und (A[l] > A[i])  WAHR maximum != i  WAHR r <= heap-größe[A] und A[r] > A[maximum]  WAHR maximum != i  FALSCH r <= heap-größe[A]  FALSCH r <= heap-größe[A]  FALSCH maximum != i  WAHR A[r] > A[maximum]  FALSCH Weiterer Ablauf in Kurzform Vorlesung Algorithmen und Datenstrukturen, WS10/11, C. Eckert TU Darmstadt FG Sicherheit in der Informationstechnik

Vorlesung Prof. C. Eckert, IT - Sicherheit, WS 02/03 Implementierung der Operationen in Pseudo-Code: Implementierung der Operation Maximum in O(1) HEAP-MAXIMUM(A) return(A[1]) (2) Implementierung der Operation Extract-Max in O(lgn). HEAP-EXTRACT-MAX (A) max = 6 1 if heap-größe [A]  1 then error „Heap-Unterlauf“ 2 5 6 max  A[1] 2 3 A[1]  A[heap-größe[A]] 4 5 2 heap-größe[A]  heap-größe [A] - 1 4 5 6 MAX-HEAPIFY (A,1) 1 3 2 return max Vorlesung Algorithmen und Datenstrukturen, WS10/11, C. Eckert TU Darmstadt FG Sicherheit in der Informationstechnik