Heap-Sort Bekommen Muttergesellschaft

Bekommen ein parent eines Knoten in einem heap-sort-array, die Berechnung würde (index - 1) /2.

Jedoch davon ausgehen, dass jedes Knotens dauert bis 4 Räume, in den array. Zugriff auf einen Datensatz/Knoten, ich muss auf die erste position der vier, die-Rekord. Hier also ein Beispiel:

Wenn ein Elternteil beginnt an der position 4, das linke Kind beginnt an der position 12 und das Rechte Kind startet auf position 16. Die Gleichung für das linke Kind wäre 2*position + 4 und die Gleichung, um die richtige Kind wäre 2*position + 8.

Was wäre die Gleichung zu bekommen, die Eltern aber? Ich brauche eine Gleichung zu erhalten die Eltern entweder das linke Kind oder das Rechte Kind, auf die gleiche Weise index-1/2 tut. Wäre das möglich? Wenn ich zwei getrennte Gleichungen, das würde nicht funktionieren, da ich nicht wirklich weiß, ob ein Datensatz ist eine linke oder eine Rechte Kind.

Danke,

  • Erm, warum sollte ein Knoten nehmen Sie 4 Räume? Es dauert eine.
  • Denn das ist, wie ich es will.. ich bin dabei eine modifizierte version von heap-sort, dass Sie nicht haben, um sorgen über die details.
  • Aber du bist um Hilfe zu bitten mit den details 😉
  • Nicht wirklich.. Seine Art eine mathematische/Algorithmus Frage, unabhängig davon, wie die details der Arbeit.
InformationsquelleAutor darksky | 2011-10-31
Schreibe einen Kommentar