Рекурсивен
алгоритъм е този, който решава проблем чрез решаването на един или по-малки екземпляри на същия проблем.За да реализираме рекурсивни алг,
използваме рекурсивни функции-рекурсивна
функция е тази,която вика себе си.Рекурентни връзки са рекурсивно дефинирани функции. Една рекурентна връзка дефинира функция,чиято деф. област е неотрицателните цели числа или чрез
някакви начални стойнос-ти,или (рекурентно) от гледна точка на нейни собствени стойности върху по-малки цели числа.Може би
най-известната такава функция е функцията
факториел,която се декларира чрез рекурентната връзка N!=N(N-1)! , за N>=1, 0!=1.
Ние
използваме рекурсия,защото тя често ни помага да изразим сложни алг в компактна форма,без да жертваме ефикасност.Но както се оказва много лесно е да напишем
проста рекурсивна фунция,която е изключително неефективна и е необх да упражняваме грижата да избягваме да бъдем натоварени с труднообработваеми реализации.Ето пример за една рекурсия:
Сподели с приятели: