Що таке рекурсія? визначення та значення

У програмуванні — програмний модуль або підпрограма, яка викликає себе для виконання ітераційної операції; іншими словами, чистий вираз повторюється для досягнення набагато складнішої операції.

Принцип рекурсії ілюструють числа Фібоначчі, числовий ряд, у якому перші два доданки дорівнюють 1; послідовні доданки задаються шляхом підсумовування двох попередніх доданків (1,1, 2, 3, 5, 8,13, 21, 34, 55, 89, 144 тощо). Числа Фібоначчі можуть бути згенеровані наступним рівнянням, якщо n більше 2: Фібоначчі («) = Фібоначчі («– 1) + Фібоначчі (n – 2).

Technipages пояснює рекурсію

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

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

Рекурсію можна простежити до 1958 року, Джон Маккарті був першим, хто використав принцип рекурсії в програмуванні, і це можна знайти в його роботі над LISP. LISP був першою мовою програмування, в якій були представлені рекурсивні функції, якими ми їх маємо сьогодні. На роботу Маккарті надихнули роботи Алонзо Черча, які були два десятиліття тому. Примітні згадки, пов’язані з рекурсією, також можуть бути датовані роботою Дедекінда над натуральними числами в 1888 році. Роза Петер представила рекурсивні функції в 1932 році на Міжнародному конгресі математиків у Цюріху в 1932 році.

Поширене використання рекурсії

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

Поширені помилки рекурсії

  • Рекурсія не вирішує проблеми, навіть якщо проблема розбита на вирішення в меншому масштабі
  • Рекурсія лише спрощує проблему і не дає на неї відповіді.