QUICK
SORT
Aline NascimentoDanilo Ataide
Professor Leandro Guarino
Introdução
O algoritmo Quick Sort é um método de ordenação muito
rápido e eficiente;
Inventado por C.A.R. Hoare em 1960, quando era estudante
da Universidade de Moscovo;
Hoare criou o Quick Sort ao tentar traduzir um dicionário de
inglês para russo, ordenando as palavras, tendo como
objetivo reduzir o problema original em subproblemas para
assim poder ser resolvido mais fácil e rapidamente.
Como Funciona?
Este método divide a tabela em duas sub-
tabelas, a partir 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 correta.
Como Funciona?
EXEMPLO: Essas barras de tamanhos diferentes devem ser
alinhadas em ordem crescente:
Como Funciona?
O algoritmo Quick Sort escolhe um elemento aleatório que
será o pivô.
Como Funciona?
Os elementos são organizados de maneira que os menores
ficam do lado esquerdo do pivô e os maiores do lado direito
(são as duas sub-tabelas). E pivô já está na posição correta.
Como Funciona?
Depois de encontrar a posição do pivô e separar em duas
tabelas, ele passa para uma das sub-tabelas e escolhe outro
pivô.
Como Funciona?
Então, com esse outro pivô ele repete o procedimento,
encontra o lugar dele, separa os menores em outras sub-
tabelas e ordena.
Como Funciona?
O pivô do início e todo o lado esquerdo já está ordenado,
Agora ele passa para a outra sub-tabela, o lado direito do
primeiro pivô, escolhe outro pivô e ordena.
Como Funciona?
Encontra o local certo do pivô e ordena os lados como nos
outros casos.
Como Funciona?
E depois de ordenado ele fica assim:
Como Funciona?
Em execução:
Como ocorrem as trocas?
Para explicar como ocorrem as trocas depois
de escolhido o pivô.
Como ocorrem as trocas?
Após fixar o pivô, ele passa para sub-tabelas de valores
menores e maiores.
O código
Colocar algum aki
Comparando Bubble x Quick
Sort
Conclusão
Existem muitos tipos de algoritmos de
ordenação e várias razões para se ordenar
uma seqüência. Uma delas é a possibilidade
se acessar seus dados de modo mais
eficiente.
O Quick Sort é um dos método mais rápidos
de ordenação
TEM Q TERMINAR
Referências Bibliográficas
http://pt.wikipedia.org/wiki/Quicksort
http://br.monografias.com
http://w3.ualg.pt/~hshah/ped/Aula%2014/Quick_final.html
http://utopia.poly.edu/~kshanm01/algorithm/quick_sort_s
imulation.html
GOODRICH, Michael T. & TAMASSIA, Roberto. Estrutura de
Dados e Algoritmos em JAVA, 4ª ed. – Porto Alegre, 2007
Top Related