Big O表記では、次の関数の成長率はどのくらいですか?
f (n) = Comb(1000,n) for n = 0,1,2,…
int Comb(int m, int n)
{
int pracResult = 1;
int i;
if (m > n/2) m = n-m;
for (i=1; i<= m; i++)
{
pracResult *= n-m+i;
pracResult /= i;
practicalCounter++;
}
return pracResult;
}
再帰的:
int combRecursive (int m, int n)
{
recursiveCounter++;
if (n == m) return 1;
if (m == 1) return n;
return combRecursive(n-1, m) + combRecursive(n-1, m-1);
}
私はn^2を推測しますか?私はおそらく間違っています...私はいつも物事がどれほど効率的であるかを理解するのに苦労してきました...
よろしくお願いします。