SlideShare uma empresa Scribd logo
1 de 18
QUICK
SORT
Aline
Nascimento
Danilo 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

Mais conteúdo relacionado

Mais procurados

Ordenamiento QuickSort
Ordenamiento QuickSortOrdenamiento QuickSort
Ordenamiento QuickSortFernando Solis
 
Metodos de ordenação estrutura de dados
Metodos de ordenação   estrutura de dadosMetodos de ordenação   estrutura de dados
Metodos de ordenação estrutura de dadosThalita Chaves
 
Binary search in ds
Binary search in dsBinary search in ds
Binary search in dschauhankapil
 
Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortlinkinpark03
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenaçãoJonas Mendonça
 
Selection sort
Selection sortSelection sort
Selection sortstella D
 
Método Burbuja y Búsqueda binaria (explicación)
Método Burbuja y Búsqueda binaria (explicación)Método Burbuja y Búsqueda binaria (explicación)
Método Burbuja y Búsqueda binaria (explicación)Jorge Samaniego
 
Programando em python listas
Programando em python   listasProgramando em python   listas
Programando em python listassamuelthiago
 
ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - OrdenaçãoAnderson Zardo
 
Algoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivosAlgoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivosDaniel Gomez Jaramillo
 
Quick sort-170316064200
Quick sort-170316064200Quick sort-170316064200
Quick sort-170316064200ifeanyiokeke3
 
Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo Carlos Criollo
 
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHI
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHIBCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHI
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHISowmya Jyothi
 

Mais procurados (20)

BUCKET SORT
BUCKET SORTBUCKET SORT
BUCKET SORT
 
Ordenamiento QuickSort
Ordenamiento QuickSortOrdenamiento QuickSort
Ordenamiento QuickSort
 
Metodos de ordenação estrutura de dados
Metodos de ordenação   estrutura de dadosMetodos de ordenação   estrutura de dados
Metodos de ordenação estrutura de dados
 
Binary search in ds
Binary search in dsBinary search in ds
Binary search in ds
 
Método de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sortMétodo de ordenamiento por selección (selection sort
Método de ordenamiento por selección (selection sort
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Ordenamiento ppt
Ordenamiento pptOrdenamiento ppt
Ordenamiento ppt
 
Selection sort
Selection sortSelection sort
Selection sort
 
Método Burbuja y Búsqueda binaria (explicación)
Método Burbuja y Búsqueda binaria (explicación)Método Burbuja y Búsqueda binaria (explicación)
Método Burbuja y Búsqueda binaria (explicación)
 
Programando em python listas
Programando em python   listasProgramando em python   listas
Programando em python listas
 
Quicksort
QuicksortQuicksort
Quicksort
 
Merge sort
Merge sortMerge sort
Merge sort
 
ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - Ordenação
 
Algoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivosAlgoritmos de ordenamiento externo sobre archivos
Algoritmos de ordenamiento externo sobre archivos
 
Quick sort-170316064200
Quick sort-170316064200Quick sort-170316064200
Quick sort-170316064200
 
Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo
 
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHI
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHIBCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHI
BCA DATA STRUCTURES SEARCHING AND SORTING MRS.SOWMYA JYOTHI
 
Algoritmo Heap Sort
Algoritmo Heap SortAlgoritmo Heap Sort
Algoritmo Heap Sort
 
Ordenamiento QuickSort
Ordenamiento QuickSortOrdenamiento QuickSort
Ordenamiento QuickSort
 

Destaque

Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...
Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...
Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...Leinylson Fontinele
 
Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeDelacyr Ferreira
 
Conjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoConjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoElaine Cecília Gatto
 
Como colocar as referências segundo a abnt
Como colocar as referências segundo a abntComo colocar as referências segundo a abnt
Como colocar as referências segundo a abntitqturma201
 
Como redigir a introdução e a conclusão de um trabalho escrito
Como redigir a introdução e a conclusão de um trabalho escritoComo redigir a introdução e a conclusão de um trabalho escrito
Como redigir a introdução e a conclusão de um trabalho escritoBiblioteca Escolar Ourique
 

Destaque (9)

Auditoria de sistemas
Auditoria de sistemasAuditoria de sistemas
Auditoria de sistemas
 
Quick Sort
Quick SortQuick Sort
Quick Sort
 
Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...
Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...
Pesquisa e Ordenação - Aula 05 - Métodos de Ordenação (Troca de partição - Qu...
 
Quicksort
QuicksortQuicksort
Quicksort
 
Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - Recursividade
 
Ordenação
OrdenaçãoOrdenação
Ordenação
 
Conjunto de instruções mips - introdução
Conjunto de instruções mips - introduçãoConjunto de instruções mips - introdução
Conjunto de instruções mips - introdução
 
Como colocar as referências segundo a abnt
Como colocar as referências segundo a abntComo colocar as referências segundo a abnt
Como colocar as referências segundo a abnt
 
Como redigir a introdução e a conclusão de um trabalho escrito
Como redigir a introdução e a conclusão de um trabalho escritoComo redigir a introdução e a conclusão de um trabalho escrito
Como redigir a introdução e a conclusão de um trabalho escrito
 

Quick sort

  • 2. 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.
  • 3. 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.
  • 4. Como Funciona?  EXEMPLO: Essas barras de tamanhos diferentes devem ser alinhadas em ordem crescente:
  • 5. Como Funciona?  O algoritmo Quick Sort escolhe um elemento aleatório que será o pivô.
  • 6. 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.
  • 7. 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ô.
  • 8. 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.
  • 9. 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.
  • 10. Como Funciona?  Encontra o local certo do pivô e ordena os lados como nos outros casos.
  • 11. Como Funciona?  E depois de ordenado ele fica assim:
  • 12. Como Funciona?  Em execução:
  • 13. Como ocorrem as trocas?  Para explicar como ocorrem as trocas depois de escolhido o pivô.
  • 14. Como ocorrem as trocas?  Após fixar o pivô, ele passa para sub-tabelas de valores menores e maiores.
  • 16. Comparando Bubble x Quick Sort
  • 17. 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
  • 18. 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