Seja fi(n) o número de operaoerealizadas pelo programa i
abaixo. Seja fi(n) a função de n que estima o número de operações elementares executadas pelo
algoritmo. Encontre ui(n) tal que f(n) = O(ui(n)).
Caso o algoritmo seja recursivo, escreva sua relação de
recorrência. Caso seja iterativo e apareçam somatórios,
escreva-os.
V[n] - vetor de inteiros (acessivel para todos os procedimentos)
************** A1 ************************
Chamada: A1 (n)
void A1 (int n)
{
int i,j,soma;
soma = 0;
i = 1;
while (i <= n)
{
j = 1;
while (j <= i)
{
soma = soma + V[j];
j = j + 1;
}
i = i + 1;
}
}
************** A3 ************************
Chamada: A3 (1, n)
void A3 (int i, int n)
{
int j,continue;
if (i <= n)
{
continue = 1;
j = 1;
while ( (j <= i) && continue)
{
if (V[i] > V[j])
{
V[i] = V[j];
continue = 0;
}
j = j + 1;
}
A3 (i+1, n);
}
}
************** A8 ************************
Chamada: A8 (1, n)
void A8 (int i, int f)
{
int j;
if (i <= f-2 )
{
j = i;
while (j <= f)
{
if (V[i] > V[j])
{
V[i] = V[j];
}
j = j + 1;
}
m = (int)( (i+f)/2 );
if ( V[m] < V[i] )
{
A8 (i, m);
}
else
{
A8 (m+1, f);
}
}
}