Sobes.tech
Intern

Rekursiya nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Öz-özünü çağıran funksiya.

Əsas problem ilə eyni quruluşa malik alt problemlərə bölünə bilən məsələlərin həllində tətbiq olunur. Sonsuz dövrü qarşısını almaq üçün çıxış şərti (əsas hal) olmalıdır.

Faktorialın hesablanması nümunəsi:

<?php
function factorial(int $n): int
{
    // Əsas hal
    if ($n <= 1) {
        return 1;
    }
    // Rekursiv çağırış
    return $n * factorial($n - 1);
}

echo factorial(5); // 120 göstərəcək
?>

Üstünlüklər:

  • Bəzi məsələlər üçün kodun zərifliyi və qısa olması.

Çatışmazlıqlar:

  • Çox dərin rekursiya səviyyələrində yığımın daşması ilə nəticələnə bilər.
  • Funksiya çağırışlarının əlavə xərcləri səbəbindən eyni məsələlər üçün iterativ həllərdən daha az səmərəli ola bilər.

Tez-tez ağacların, fayl sistemlərinin keçilməsi, kombinasiyalı məsələlərin həlli üçün istifadə olunur.