Rekurze: Porovnání verzí

Smazaný obsah Přidaný obsah
Řádek 275:
Následně se algoritmus '''vhodně''' implementuje, což může znamenat i opuštění rekurzivního popisu, návrh nových datových struktur (vlastního zásobníku či pole pro dynamické programování) a jejich vhodnou obsluhu. Vhodná implementace pak funguje dostatečně dobře a případně se to dá i zdůvodnit. Například [[quicksort]] dovoluje taková implementační rozhodnutí.
;Související problémy
# Speciální přístupy jsou tabelace, koncová rekurze a návrhový vzor [[trampolína (programování)|trampolína]] (''trampolínový styl''), zahrnujíc i [[dynamické programování]].
# Fibonacciho čísla i při naivní zápisu algoritmu s exponenciální složitostí potřebují pouze lineární počet položek na zásobníku. Položky jsou sice velkévelikostí závislé na vstupu, ale úměrně výsledku, takže ta paměť se musí stejně alokovat.
# Rekurze implementovaná obecně uchovává na zásobníku případně systémové informace kromě vlastních (lokálních) proměnných algoritmu. Spotřeba paměti je větší než při ručním uchovávání pouze potřebných informací.