A kupacrendezés egy bináris kupacot épít az tömbből, majd többször kivonja a maximumot a rendezett sorrend eléréséhez. O(n log n) időben fut és helyben működik.
Az ötlet
Egy max-kupac a gyökérnél tartja a legnagyobb elemet. Építs kupacot (O(n)), majd cseréld ki a gyökeret a végén, csökkentsd a kupacot, és alkalmázd újra a kupac-tulajdonságot (sift down) — n alkalommal.
