Запропонувати правкуПокращити цю статтюДопрацюйте відповідь до «Рекурсія». Ваші зміни проходять модерацію перед публікацією.Потрібне підтвердженняКонтентЩо ви змінюєте🇺🇸EN🇺🇦UAПереглядЗаголовок (UA)Коротка відповідь (UA)**Рекурсія** - це прийом, при якому функція викликає саму себе для розв'язання задачі, поки не досягне базового випадку - умови завершення. Вона складається з базового випадку та рекурсивного виклику, що наближає до нього. **Ключове:** щоб уникнути безкінечної рекурсії, функція завжди повинна мати базовий випадок, який зупиняє подальші виклики.Показується над повною відповіддю для швидкого нагадування.Відповідь (UA)Зображення**Рекурсія** - це прийом, при якому **функція викликає саму себе** для розв'язання задачі, поки не досягне **умови завершення** (базового випадку). Простіше кажучи: > Функція ділить задачу на підзадачі того самого типу і розв'язує їх, викликаючи саму себе. --- ### Приклад - факторіал числа ```javascript function factorial(n) { if (n === 1) return 1; // базовий випадок return n * factorial(n - 1); // рекурсивний виклик } console.log(factorial(5)); // 120 ``` Як це працює: ```javascript factorial(5) -> 5 * factorial(4) -> 5 * 4 * factorial(3) -> 5 * 4 * 3 * factorial(2) -> 5 * 4 * 3 * 2 * factorial(1) -> 5 * 4 * 3 * 2 * 1 = 120 ``` --- ### Головне правило рекурсії 1. **Базовий випадок** - коли функція перестає викликати себе. 2. **Рекурсивний виклик** - крок, який наближає нас до базового випадку. --- ### Де використовується - обхід дерев і графів; - пошук у структурах даних; - робота з вкладеними структурами (наприклад, DOM); - математичні задачі (факторіал, числа Фібоначчі тощо). --- **Коротко:** > Рекурсія - це коли функція **розв'язує задачу, викликаючи саму себе**, > поки не досягне **простого базового випадку**, після чого повертає результат.Для рев’юераПримітка для модератора (необов’язково)Бачить лише модератор. Прискорює рев’ю.