Informatică Programare
Algoritmi recursivi C++ exemple
Un algoritm recursiv în C++ este o funcție care se autoapelează pentru a rezolva o problemă prin descompunerea ei în subprobleme mai mici. Recursivitatea este eficientă pentru sarcini precum calculul factorialului sau parcurgerea structurilor de date.
Exemple clasice
- 1 Factorial int fact(int n) { if (n <= 1) return 1; else return n * fact(n-1); }
- 2 Fibonacci int fib(int n) { if (n <= 1) return n; else return fib(n-1) + fib(n-2); }
- 3 Suma cifrelor int sum_cif(int n) { if (n == 0) return 0; else return n % 10 + sum_cif(n/10); }
Aplicații practice
- 1 Parcurgere arbore binar Folosește recursivitate pentru a vizita nodurile unui arbore în ordine.
- 2 Căutare binară recursivă Implementează căutarea binară pe un vector sortat prin autoapeluri.
- 3 Tower of Hanoi Rezolvă problema mutării discurilor între tije folosind recursivitate.
Asigură-te că există o condiție de oprire pentru a evita recursivitatea infinită.