Навіщо потрібна рекурсія?

Найвідоміше програмісту застосування рекурсії завдання на обчислення чисел Фібоначчі чи факторіалу. Обчислення чисел Фібоначчі — найвідоміше програмісту завдання, яке не треба вирішувати ні за експоненційний, ні за лінійний час. А друге таке завдання – це обчислення визначника матриці.

Рекурсія – Це термін у програмуванні, що означає виклик функцією самої себе. Рекурсивні функції можуть бути використані для елегантного вирішення певних завдань. Коли функція викликає саму себе, це називається кроком рекурсії.

Можна виділити такі взаємопов'язані переваги рекурсії: природність (натуральність) уявлення складних, здавалося б, алгоритмів; рекурсивний алгоритм більш читабельний у порівнянні з ітераційним; для багатьох поширених завдань рекурсію легше реалізувати ніж ітерацію.

Простими словами, рекурсія – Визначення частини функції (методу) через саму себе, тобто це функція, яка викликає саму себе, безпосередньо (у своєму тілі) або опосередковано (через іншу функцію).