Search
Některé cesty vedou k nalezení cíle možná rychleji. Jak to můžeme odhadnout. Heuristická funkce. Jaké heuristiky jsou nejlepší, přípustné?
Naprogramujte rekurzivně výpočet faktoriálu $f(n) = n!$
Návod
Pro inspiraci tréninku implementace rekurzivní funkce viz napr. https://www.python-course.eu/recursive_functions.php
Doporučuji připomenout vzorec pro výpočet na tabuli a převést ho vhodně na rekurzivní formu.
$n! = n(n-1)(n-2)\cdots 1$
což lze převést na
$n! = n(n-1)!$
tedy:
$f(n) = n * f(n-1)$
Vizualizace volání:
Naprogramujte rekurzivně výpočet Fibonacciho posloupnosti. $f(n) = f(n-1) + f(n-2)$. Analyzujte počet volání funkce a hloubku zanoření.
Strom volani:
Demo code:
jen pro učitele: https://gitlab.fel.cvut.cz/kui-course/kui-misc/blob/master/fibonacci.py