Recursivitatea: Eficiența


Adâncimea recursiei este numărul de apeluri recursive ale unei funcții.

Recursivitatea este ineficientă dacă adâncimea recursiei este prea mare.

De asemenea, ineficiența este dată și de calcularea repetată a acelorași valori, prin apeluri de funcții recursive.

unsigned int
fib(
unsigned int
x)
{
  
if
(x<=1)
return
1;
  
return
fib(x-2)+fib(x-1);
}

După cum se observă din desen, varianta recursivă a calculării șirului Fibonacci este ineficientă, din cauză că se calculează de mai multe ori aceleaşi valori.

Obiective