Heap Definition

Was ist Heap?

Ein Heap ist eine Datenstruktur, die aus „Knoten“ besteht, die Werte enthalten. Ein typischer Heap hat einen Wurzelknoten an der Spitze, der zwei oder mehr Kindknoten direkt unter sich haben kann. Jeder Knoten kann zwei oder mehr Kindknoten haben, was bedeutet, dass der Heap mit jedem Kindknoten breiter wird. Visuell sieht ein Heap wie ein auf dem Kopf stehender Baum aus, und die allgemeine Form ist ein Heap.

Während jeder Knoten in einem Heap zwei oder mehr Kindknoten (auch „Kinder“ genannt) haben kann, beschränken die meisten Heaps jeden Knoten auf zwei Kinder. Diese Arten von Heaps werden auch binäre Heaps genannt und können zur Speicherung von sortierten Daten verwendet werden. Ein „binary max heap“ speichert zum Beispiel den höchsten Wert im Wurzelknoten. Der zweit- und dritthöchste Wert wird in den Unterknoten des Wurzelknotens gespeichert. Im gesamten Baum hat jeder Knoten einen größeren Wert als jeder seiner Kindknoten. Ein „binary min heap“ ist das Gegenteil, bei dem der Wurzelknoten den niedrigsten Wert speichert und jeder Knoten einen niedrigeren Wert als seine Kinder hat.

In der Informatik werden Heaps oft als einfache Diagramme gezeichnet. Die tatsächliche Speicherung von Daten in einem Heap ist jedoch komplexer. Um einen Heap zu erstellen, müssen Programmierer individuelle Algorithmen zum Einfügen und Löschen von Daten schreiben. Die in einen Heap eingefügten Werte werden normalerweise in einem Array gespeichert, auf das ein Programm verweisen kann. Da die Daten in einem Heap bereits sortiert sind, bietet er eine effiziente Möglichkeit, nach bestimmten Werten zu suchen.

Hinweis:„Der Heap“ ist auch ein Programmierbegriff, der verwendet werden kann, um dynamisch zugewiesenen Speicher zu beschreiben. Auf diesen Speicherblock kann von aktiven Anwendungen zugegriffen werden. Da der Speicher im Heap dynamisch zugewiesen wird, kann er je nach Speicherverbrauch wachsen oder schrumpfen.

Die Definition von Heap auf dieser Seite ist eine Originaldefinition von SharTec.eu.
Das Ziel von SharTec ist es, Computerterminologie so zu erklären, dass sie leicht zu verstehen ist. Wir bemühen uns bei jeder von uns veröffentlichten Definition um Einfachheit und Genauigkeit. Wenn Sie Feedback zur Heap-Definition haben oder einen neuen Fachbegriff vorschlagen möchten, kontaktieren Sie uns bitte.