Diskussion:Binärer Heap

Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 4. April 2006 um 12:30 Uhr durch DasMaximum (Diskussion | Beiträge). Sie kann sich erheblich von der aktuellen Version unterscheiden.

In der Wikipedia steht anscheinend nirgends etwas darüber, was die Wurzel eines Baums ist.

Über den Algorithmus, mit dem man ein Array in einen Heap umwandelt, habe ich noch nichts geschrieben. --Head 11:44, 23. Jun 2003 (CEST)


Zum o.g. Algorithmus: Die Elemente an array[2*i] und array[2*i + 1] sind - sofern sie nicht ausserhalb der Array-Grenzen liegen, die Söhne/Kinder eines Knotens mit Index i.


Zudem: Man kann heapify() auch getrennt als HeapDown() und HeapUp() implementieren, da Delete() und Replace() nur HeapDown() und Insert() nur HeapUp() benötigt. -- M. Moll 19.09.2005

Heap in einem Array speichern

Hallo!

Wäre es nicht sinnvoller zu sagen, dass das Array an Position 0 beginnt und dann die children bei 2i+1 und 2i+2 liegen? Ich finds sinnvoller, da schlißlich in den meisten (oder sogar allen?) Programmiersprachen Array mit dem Index 0 beginnen. -- M. Krickl 4.4.2006