Rekurencja to sytuacja, gdy funkcja rozwiązuje problem wywołując samą siebie dla mniejszego wejścia. Base case to warunek stopu bez dalszej rekurencji, dzięki czemu wywołania w końcu się kończą.