Jak powinno wyglądać rozwinięcie, gdy próbuje rozwiązać to tak jak dla silnii to wychodzi C(0), a nie mam takiego przypadku i nie wiem co dalej.
static int fibo(int n)
{
if (n == 1 || n == 2)
return 1;
else
return fibo(n-1) + fibo(n-2);
}
Dla silnii liczymy to tak:
Silnia Czas
C(n) = {4 dla n=0 ^ n=1
C(n-1)+6 dla n>1}
Rozw
C(n)=C(n-1)+6 =C(n-2)+6+6=C(n-3)+6+6+6=C(n-n)+6n=C(0)+6n=4+6n
Spr C(0) = 4+6*0=4
Zał C(n)=4+6n
Tez C(n+1)=4+6(n+1) = 10+6n
Dow C(n+1)=C(n)+4+6n=4+6n+6=10+6n
static int silnia(int n)
{
if (n == 0 || n == 1)
return 1;
else
return n * silnia(n-1);
}