O(1) -->
--> O(log n) -->
--> O(n log n) -->
--> O(n) -->
--> O(n2) -->
--> O(2n) -->
--> O(n!);
Estou precisando de uma ajudinha.
Tenho alguns codigos que preciso analizar e dizer em qual O(n) estão.
Exemplo:
public void ordena(int v[]){
int n=v.lenght;
for(int i=0 ; i<n-1 ; i++){
int min = i;
for(int j=i+1 ; j<n ; j++){
if(v[j] < v[mim])
mim = j;
}//fim for j
int x = v[mim];
v[mim] = v[i];
v[i] = x;
}//fim for i
}//fim metodo
********************* Analisando ********************
O for mais interno é O(n-i);
Depois do for j as tres linhas de comando são O(1);
O for externo é O(n2); - (N ao quadrado)
A ajuda é o seguinte: estou a procura de apostilas, sites, programas e exemplos de analise de algoritmo.
Exemplo de exercicio a resolver:
Qual a ordem de complexidade deste somatorio:
Somatorio = 1+1/7+1/49+ . . . + 1/n;
Somatorio de i comecando de 1 ate n;