Streitet euch nicht ueber die Sortiermethoden. Ich wuerde gleich mit Heapsort arbeiten (wohl dem der ein Beispiel in der Schublade hat

.
Die Idee mit dem eindimensionalen Array ist die wichtige. Die aufgefuehrte sortierung ist naemlich genau das eindimensional.