• Keine Ergebnisse gefunden

Algorithmen und Datenstrukturen

N/A
N/A
Protected

Academic year: 2022

Aktie "Algorithmen und Datenstrukturen"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Algorithmen und Datenstrukturen

B1. Heap und Heapsort - Eine informelle Einf¨uhrung

Marcel L¨uthi and Gabriele R¨oger

Universit¨at Basel

31.03.2021

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 1 / 8

Algorithmen und Datenstrukturen

31.03.2021 — B1. Heap und Heapsort - Eine informelle Einf¨uhrung

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 2 / 8

Datenstruktur Heap

Heap

Ein (bin¨arer) min-Heap ist ein vollst¨andiger bin¨arer Baum, bei dem gilt, dass der Wert in jedem Knoten kleiner gleich dem Wert seiner beiden Kindern (sofern vorhanden) ist.

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 3 / 8

Aufbauen eines Heaps

Elemente: 7, 13, 5, 8, 1, 2

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 4 / 8

(2)

Entfernen des kleinsten Elements vom Heap

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 5 / 8

Beispiel: Sortieren mit Heaps (Ausblick)

Idee des Algorithmus:

I Baue Heap aus unsortierter Liste I Solange Elemente im Heap sind

I Entferne kleinstes Element (Wurzel) I Schreibe Element in (neue) Liste I Stelle Heapbedingung wieder her

I Neue Liste enth¨alt Elemente in sortierter Reihenfolge Heapsort: Gleiche Idee, aber inplace.

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 6 / 8

Sortieren mit Heaps

Offene Fragen:

I Wie schnell k¨onnen wir Heap aus n unsortierten Elementen aufbauen?

I Antwort:Naiv: InO(nlog2n) Operationen. Trickreich: InO(n) I Wie schnell k¨onnen wir Heapbedingung nach Entfernen

wiederherstellen?

I Antwort:InO(log2n) Operationen

I Wie gross ist die gesamte Laufzeitkomplexit¨at I Antwort:InO(nlog2n) Operationen

Komplexit¨at verschoben von Algorithmus nach Datenstruktur

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 7 / 8

Zusammenfassung

I Algorithmen und Datenstrukturen arbeiten zusammen I (Teil der) Komplexit¨at kann verschoben werden I Datenstrukturen k¨onnen meist visualisiert/graphisch

verstanden werden

I Oft gilt: Gute Datenstrukturen ⇒ Einfach(ere) Programme Details von Heapsort folgen ...

M. L¨uthi, G. R¨oger (Universit¨at Basel) Algorithmen und Datenstrukturen 31.03.2021 8 / 8

Referenzen

ÄHNLICHE DOKUMENTE

Ein bin¨ arer Baum t ist geordnet, wenn er entweder leer ist, oder wenn alle Knoten des linken Unterbaums kleiner (oder gleich) sind als der Wert des Wurzelknotens, der Wur-

Ein (bin¨ arer) min-Heap ist ein vollst¨ andiger bin¨ arer Baum, bei dem gilt, dass der Wert in jedem Knoten kleiner gleich dem Wert seiner beiden Kindern (sofern vorhanden)

Das haben wir dann f¨ur f¨unf Euro im Supermarkt gekauft, sah zwar nicht ganz so aus wie das aus dem Automaten, aber immerhin.. Zu Hause am Computer dachte ich ’jetzt will

Eine Funktion heißt einein- deutig, wenn es auch umgekehrt zu jedem f(x)-Wert genau einen x -Wert gibt.. Das Schaubild (der Graph ) einer Funktion ist die vollst¨ andige

Schon daraus erklärt sich nicht nur jene ascetische Richtung, die seit dieser Zeit mehr in seinem Leben hervortrat, sondern auch jene Strenge in der

Ein tern¨arer Heap unterscheidet sich von dem in der Vorlesung eingef¨ uhrten Heap dadurch, daß jeder Knoten drei S¨ohne haben kann. Dieser ist ebenfalls ein vollst¨andiger

Ein (bin¨arer) Heap ist ein (fast) vollst¨andiger bin¨arer Baum, in dem f¨ur jeden Knoten gilt, dass er in einer definierten Ordnungsrelation zu seinen Nachfolger steht. I

tens politisch von Assyrien in besonderer Weise gefördert worden sein. Karkemis stand Salmanassar III. Und auch in einer Inschrift Samsi-Adads V. wird Karkemis nur