Mnoho problémů lze řešit různými způsoby, různými algoritmy. Tyto algoritmy bychom rádi porovnávali z různých pohledů. K tomu se velmi hodí použít asymptotické vztahy zavedené v předchozí části textu. Nejprve si ale ujasněme koncepční rámec, v kterém se pohybujeme
Výpočetní problém $P$: úkol zpracovat/transformovat vstupní data $I$ na výstupní data $O$ s požadovanými vlastnostmi.
Algoritmus $A$: výpočetní postup řešení problému $P$, čili posloupnost výpočetních kroků, která z vstupních dat vyprodukuje výstupní data požadovaných vlastností.
Instance problému: problém s konkrétními daty potřebnými pro jeho řešení.
Definujeme-li „velikost“ vstupních dat $I$, pak můžeme zkoumat chování daného algoritmu $A$ z různých úhlů pohledu:
Průměrný/minimální/maximální/řádový (asymptotický) počet „elementárních operací“, nutných k získání výstupu v závislosti na velikosti vstupu.
Průměrná/minimální/maximální/řádová (asymptotická) „paměťová náročnost“, nutná k získání výstupu v závislosti na velikosti vstupu.