Complexidade de Algoritmos

2 respostas
S

Oi a todos.

Ajudem-me a calcular a eficiencia temporal assimptotica PARA O CASO PIOR dos seguintes algoritmos que se seguem:

a) [code] public static int p(int x,int n)
{ int result=x;
for(int i=1;i result*=x;
return result;
}

b) [code] public static int p(int x,int n)
{ if(n==0)
return 1;
int result=p(x,n/2);
return result*result*(n%2==0?1:X);
}

2 Respostas

andre_udi

No primeiro algoritmo, o numero de iteracoes do laço é proporcional ao tamanho de n. As outras operacoes
sao constantes, o q nos da um tempo de O(n).
No segundo algoritmos, como as operacoes aritmeticas e logicas sao constantes, o tempo q “vale”
no pior caso, e o tempo de p, que e O(n).
portanto, os 2 algoritmos sao O(n).

espero ter ajudado.

abraços

ddduran

ptz mais um trabalho de escola pro pessoal do forum responder, assim não da

Criado 22 de agosto de 2007
Ultima resposta 22 de ago. de 2007
Respostas 2
Participantes 3