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 Pasul 1 Definește funcția factorial(n): dacă n <= 1, returnează 1 (caz de bază).
- 2 Pasul 2 Altfel, returnează n * factorial(n-1) (pas recursiv).
- 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.