Asymptotická složitost: Porovnání verzí
Smazaný obsah Přidaný obsah
Přepsání části s příklady časových složitostí do tabulky. |
Vyhození textu přesunutého do článku "Landauova notace" |
||
Řádek 1:
Při řešení úloh pomocí výpočetní techniky musíme mít nástroj, kterým dokážeme porovnat efektivitu a rychlost vykonávání jednotlivých algoritmů. Pro tento účel byly zavedeny pojmy '''asymptotická složitost''' a '''operační náročnost algoritmu'''.
'''Asymptotická složitost''' je způsob klasifikace počítačových [[algoritmus|algoritmů]]. Určuje operační náročnost algoritmu tak, že zjišťuje jakým způsobem se bude chování algoritmu měnit v závislosti na změně velikosti (počtu) vstupních dat. Zapisuje se pomocí [[Landauova notace|Landauovy notace]] (též „Omikron notace“, nebo
Používaný zápis znamená, že náročnost algoritmu je menší než <math>A + B \cdot f(N)</math>, kde <math>A</math> a <math>B</math> jsou vhodně zvolené konstanty a <math>N</math> je veličina popisující velikost vstupních dat. Zanedbáváme tedy multiplikativní i aditivní konstanty, tzn. <math>O(N + 1000) = O(1000 \cdot N) = O(N)</math>. Zajímá nás jen chování funkce pro velké hodnoty <math>N</math>.
Řádek 66 ⟶ 64:
Existují i funkce, u nichž nelze složitost vůbec shora rozumně omezit. Příkladem budiž [[Ackermannova funkce]].
== Snižování výpočetní složitosti algoritmů ==
Řádek 186 ⟶ 129:
Podobný případ je, když asymptoticky lepší algoritmus A má větší multiplikativní konstantu než alg. A*, ale v důsledku toho je pro reálně používané, tj. dostatečně malé, velikosti dat výhodnější A*, protože A* má menší režii.
==
=== Související články ===
* [[Landauova notace]]
=== Externí odkazy ===
*[http://wiki.matfyz.cz/index.php?title=St%C3%A1tnice_-_Odhady_slo%C5%BEitosti Odhady složitosti] {{cs}}
|