- Třídění haldou (hromadou)
- Využívá datovou strukturu zvanou halda
- (Binární) halda = pole, ve kterém uložení prvků simuluje jejich přirozené uložení v binárním stromu
- Složitost algoritmu v nejhorším případě:
- Pole se nazývá max-halda, pokud pro každý platí, že
- Pole se nazývá min-halda, pokud pro každý platí, že
- in-place třídění
- nestabilní algoritmus porovnávání
Princip algoritmu
- Algoritmus transformuje vstupní pole na binární max-haldu, kde každý rodičovský uzel má hodnotu větší než jeho děti.
- Toto uspořádání zajistí, že největší prvek je na vrcholu haldy.
- Algoritmus postupně odstraňuje největší prvek (kořen haldy) a vyměňuje ho s posledním prvkem v haldě.
- Pak znovu obnoví strukturu max-haldy ve zbytku pole a pokračuje, dokud nejsou všechny prvky setříděné.
Příklad
Odůvodnění složitosti Heap Sort
Navigace
Předchozí: Merge sort a jeho složitost Následující: Další metody třídění - counting sort, radix sort, bucket sort Celý okruh: 1. Teoretické základy informačních technologií