Кратко обобщение

Ключови термини

Рекурсивната база е тривиален случай, в който решението на проблема е очевидно, тоест функцията не трябва да се извиква сама.

Декомпозицията е израз на общия случай по отношение на по-прости подпроблеми с модифицирани параметри.

Непряка (взаимна) рекурсия е поредица от взаимни извиквания на няколко функции, организирани като циклично затваряне върху тялото на оригиналната функция, но с различен набор от параметри.

Параметризирането е изборът на параметри от изложението на проблема, които се използват за описание на условията на проблема и решението.

Директната рекурсия е директно извикване на рекурсивна функция към себе си, но с различен набор от входни данни.

Рекурсивна триада - това са етапите на решаване на задачи по рекурсивния метод.

Рекурсивна функция е функция, която в тялото си съдържа извикване към себе си с модифициран набор от параметри.

Рекурсивен алгоритъм е алгоритъм, чиято дефиниция съдържа директно или непряко извикване на същия алгоритъм.

Рекурсивен стек е област от паметта, предназначена да съхранява всички междинни стойности на локални променливи с всеки следващ рекурсивен достъп.

Рекурсията в програмирането е разделяне стъпка по стъпка на задача на подзадачи, подобни на оригиналната.

Рекурсията в най-широк смисъл е дефиницията на обект чрез позоваване на самия себе си.

  1. Рекурсивното свойство характеризира обектите от околния свят, които имат самоподобие.
  2. Рекурсията в общи линии се характеризира с дефиниране на обект чрез позоваване на самия себе си.
  3. Рекурсивните функции съдържат в тялото си извикване към себе си с модифициран набор от параметри. При коетосамото извикване може да бъде организирано чрез верига от взаимни извиквания на функции.
  4. Решаването на проблеми по рекурсивни начини се извършва чрез разработване на рекурсивна триада.
  5. Целесъобразността на използването на рекурсия в програмирането се дължи на спецификата на задачите, при формулирането на които изрично или косвено е посочено, че задачата може да бъде сведена до подзадачи, подобни на самата задача.
  6. Областта на паметта, предназначена за съхраняване на всички междинни стойности на локални променливи с всеки следващ рекурсивен достъп, образува рекурсивен стек.
  7. Рекурсивните методи за решаване на проблеми са широко използвани в процедурното програмиране.