Escolar Documentos
Profissional Documentos
Cultura Documentos
Turma I32
Discentes:
Crispino Menomussanga
Dody Mambuque
Edmilson Manjate
Idácio Zibia
Wagner Devete
Índice
I. Introdução...................................................................................3
II. Metodologia................................................................................3
V. Implementação...........................................................................5
VI. Exemplo......................................................................................7
IX. Conclusão...................................................................................9
X. Bibliografia...............................................................................10
2
I. Introdução
Segundo as pesquisas feitas o método, Quicksort é um dos algoritmos de ordenação
mais utilizados a nível mundial. Não só para fins didácticos mas também para a resolução de
problemas práticos e reais, pelas suas características. Tem uma complexidade media algorítmica
de O(nLogn), mas nos piores casos é de O(n2).
II. Metodologia
Para elaboração deste trabalho tivemos auxilio da internet, pois não encontramos
conteúdos relacionados com a matéria na biblioteca da nossa escola. O objetivo do trabalho é
falar a cerca do método de ordenação quickSort e para entender o mesmo recorremos a vídeo
aulas no youtube e para uma melhor explicação lemos e comparamos os textos dispostos na
internet.
3
III. QuickSort
O Quick Sort é um dos métodos mais rápidos de ordenação, apesar de às vezes partições
desequilibradas poderem conduzir a uma ordenação lenta. Esse método de ordenação utiliza a
técnica divide and conquer (dividir o problema inicial em dois subproblemas e resolver um
problema menor utilizando a recursividade)
Este método baseia-se na divisão da tabela em duas sub-tabelas, dependendo de um
elemento chamado pivô, normalmente o 1º elemento da tabela. Uma das sub-tabelas contém os
elementos menores que o pivô enquanto a outra contém os maiores. O pivô é colocado entre
ambas, ficando na posição correcta. As duas sub-tabelas são ordenadas de forma idêntica, até que
se chegue à tabela com um só elemento.
4
IV. Implementação
public class QuickSort{
i++;
f--;
else
5
{
vetor[i] = vetor[f];
vetor[f] = troca;
i++;
f--;
vetor[inicio] = vetor[f];
vetor[f] = pivo;
return f;
6
V. Exemplo
Seja dado o vector[“25”,”57”,”48”,”37”,”12”,”92”,”86”,”33”,]
7
inicial em dois subproblemas e resolver um problema menor utilizando a recursividade), facto
que justifica a sua eficiência.
8
VIII. Conclusão
O algoritmo QuickSort, acaba sendo rápido porque divide um array de tamanho
considerável em partes menores, e pela sua recursividade acaba sendo ainda mais rápida, pois
cria threads. Quicksort é uma versão optimizada de uma árvore binária ordenada. Em vez de
introduzir itens sequencialmente numa árvore explicita, o Quicksort organiza-os correntemente
na árvore onde está implícito, fazendo-o com chamadas recursivas à mesma. O algoritmo faz
exactamente as mesmas comparações, mas com uma ordem diferente.
9
IX. Bibliografia
http://w3.ualg.pt/~hshah/ped/Aula%2014/Quick_final.html
https://pt.wikipedia.org/wiki/Quicksort#O_algoritmo
https://pt.wikipedia.org/wiki/Algoritmo_de_ordena%C3%A7%C3%A3o
10