Essays.club - TCC, Modelos de monografias, Trabalhos de universidades, Ensaios, Bibliografias
Pesquisar

Lista de Projeto de algoritmos

Por:   •  22/4/2018  •  914 Palavras (4 Páginas)  •  363 Visualizações

Página 1 de 4

...

{break;}

swap(v,i,j); // troca j pelo j

}

swap(v,p,j); // troca o lado esquerda por j

return j;

}

- Quick Sort :

void quicksort( int vet[], int p, int r)

{

int j;

if( p

j = partition( vet, p, r); // chama a função paticiona

quicksort( vet, p, j-1); // se chama recursivamente

quicksort( vet, j+1, r);

}

}

Questão 31 :

Após todo esse estudo sobre os algoritmos selection, insertion sort, merge sort, quick sort, podemos entender as características, peculiaridades e curiosidades de cada um, nos seus piores, médios e melhores casos. Entretanto, o foco é compara-los, deixando mais claro tudo isso.

Dentre esses quatro algoritmos, oque mostrou ser mais eficiente foi o quick sort, considerando a sua versão três, onde o pivô é escolhido de maneira certa. Mas o merge não fica muito atrás, também demonstrou muita eficiência com sua complexidade O(nlogn) em todos os casos. Isso ocorre pois o merge sort não tem que escolher pivô, simplesmente vai dividindo o vetor em metades, diferente do quick sort, onde a escolha do pivô é de extrema importância.

Mesmo o quick sort podendo se tornar pior que o merge, ele se torna bem melhor, caso o pivô seja escolhido mais no meio do vetor possível, facilitando a ordenação. Mas, não é apenas isso que difere os dois, o quick sort não necessita de faze de combinação diferente do merge sort, explicando a vantagem do quick sort. Escolhendo o pivô de forma errada o quick sort pode chegar a uma complexidade de O(n^2), se assemelhando com o insert sort no seu pior caso e com o selection.

Levando em consideração a ineficiência, o selection chama a atenção, tendo uma complexidade de O(n^2) em todos os casos. Isso acontece pois, em qualquer situação, o código do selection terá que ser completamente executado.

E por ultimo temos o insert sort, mantendo seu bom desempenho no melhor caso, mas tendo uma complexidade de O(n^2) no médio e no pior caso. Com todas essas informações, fica bem claro onde cada um dos algoritmos se sobressai ou deixa a desejar. Sendo que esses são apenas quatro dentre muitos outros algoritmos que serão estudados futuramente.

...

Baixar como  txt (5.4 Kb)   pdf (47 Kb)   docx (14.4 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no Essays.club