Triediaci algoritmus
From Wikipedia, the free encyclopedia
Triediaci algoritmus je v informatike algoritmus, ktorý zoraďuje prvky zoznamu v určenom poradí. Najpoužívanejšie sú numerické a lexikografické poradie.
Efektívny triediaci algoritmus je dôležitý pre optimalizáciu iných algoritmov (ako vyhľadávacie a spájacie algoritmy), ktoré vyžadujú na správnu funkciu utriedený zoznam. Tiež sa používa na kanonizáciu údajov a tvorbu výstupu zrozumiteľného pre človeka. Formálne, výstup musí spĺňať dve podmienky:
- výstup je vo neklesajúcom poradí (žiadny prvok nie je menší ako predchádzajúci prvok vzhľadom na požadované konečné poradie);
- výstup je permutáciou (preusporiadaním) vstupu.
Od počiatkov informatiky priťahoval problém triedenia veľa záujmu výskumníkov, snáď vďaka zložitosti efektívneho riešenia napriek jednoduchému a intuitívnemu zadaniu. Napríklad bubble sort bol analyzovaný už v roku 1956 . Hoci mnohí triedenie považujú za vyriešený problém, ešte aj dnes sa stále vyvíjajú užitočné nové triediace algoritmy (napríklad library sort bol prvýkrát publikovaný v roku 2004). Triediace algoritmy sú prevažne prezentované v úvodných kurzoch informatiky a programovania, kde hojnosť algoritmov riešiacich jeden problém poskutuje jemný úvod k rôznym fundamentálnym konceptom algoritmizácie ako notácia veľké O, algoritmy rozdeľ a panuj, údajové štruktúry, probabilistické algoritmy a analýza zložitosti.