Informatică Programare

Ce este recursivitatea in programare?

Recursivitatea în programare este o tehnică unde o funcție se autoapelează pentru a rezolva o problemă. Ea împarte problema în subprobleme mai mici, similare. De exemplu, calculul factorialului n! = n * (n-1)! folosește recursivitate.

Elemente cheie

  • Caz de bază Condiția care oprește autoapelurile, evitând bucla infinită.
  • Pas recursiv Funcția se autoapelează cu o intrare mai mică, progresând spre cazul de bază.
  • Stiva de apeluri Fiecare autoapel adaugă un cadru pe stivă, consumând memorie.

Exemplu simplu

  1. 1
    Pasul 1 Definește funcția factorial(n): dacă n <= 1, returnează 1 (caz de bază).
  2. 2
    Pasul 2 Altfel, returnează n * factorial(n-1) (pas recursiv).
  3. 3
    Pasul 3 Apelează factorial(3): 3 * factorial(2) -> 3 * 2 * factorial(1) -> 3 * 2 * 1 = 6.

Verifică mereu cazul de bază pentru a evita erori de execuție.

Mai multe din Programare