SlideShare uma empresa Scribd logo
Universidade Presbiteriana Mackenzie	
  
Aula	
  4:	
  Selec+on	
  Sort	
  
Prof. Ms. Daniel Arndt Alves
Faculdade	
  de	
  Computação	
  e	
  Informá+ca	
  
Computação e Informática
Faculdade de
Estrutura	
  de	
  
Dados	
  II	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   1	
  
Tópicos	
  da	
  Aula	
  
•  Selec%on	
  Sort	
  
•  Complexidade	
  Computacional	
  
•  Desvantagens	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   2	
  
•  Um	
  dos	
  algoritmos	
  mais	
  simples	
  
•  Mais	
  recomendado	
  para	
  conjuntos	
  pequenos	
  
•  Procedimento:	
  
– Selecione	
  o	
  menor	
  item	
  do	
  conjunto	
  e	
  troque-­‐o	
  
com	
  o	
  item	
  que	
  está	
  na	
  posição	
  i	
  
– Repita	
  essas	
  operações	
  com	
  os	
  demais	
  itens	
  até	
  
que	
  reste	
  apenas	
  um	
  elemento	
  
Selection Sort
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   3	
  
Selection Sort
•  O algoritmo de ordenação selection sort
permite ordenar os valores num vetor, por
exemplo:
a[0] <= a[1] <= a[2] … <= a[a.length-1]
•  O algoritmo selection sort coloca o menor
item em a[0], o seguinte menor item em
a[1], e assim sucessivamente até ao último
item.
for(i = 0; i <a.length-1; i++)
coloca o io item menor em a[i]
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   4	
  
Selection Sort
•  Selection sort começa por procurar o menor
item do array e troca-o com o item a[0].
•  Selection sort continua procurando o próximo
menor item e troca-o com as sucessivos itens
do array a.
•  Selection sort termina quando já só existe um
item.
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   5	
  
Selec%on	
  Sort	
  
•  Na	
  primeira	
  etapa	
  seleciona-­‐se	
  o	
  maior	
  valor	
  
entre	
  N	
  elementos	
  e	
  move-­‐se	
  para	
  a	
  “área	
  de	
  
saída”	
  
•  Na	
  segunda	
  etapa	
  seleciona-­‐se	
  o	
  maior	
  valor	
  
entre	
  N-­‐1	
  elementos	
  e	
  move-­‐se	
  para	
  a	
  “área	
  
de	
  saída”	
  
•  Repete-­‐se	
  o	
  processo	
  até	
  que	
  N	
  registros	
  
tenham	
  sido	
  selecionados	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   6	
  
Selec%on	
  Sort	
  
O	
   R	
   D	
   E	
   N	
   A	
  
1	
   2	
   3	
   4	
   5	
   6	
  
Chaves	
  Iniciais:	
  
i=1:	
   A	
   R	
   D	
   E	
   N	
   O	
  
A	
   D	
   R	
   E	
   N	
   O	
  
A	
   D	
   E	
   R	
   N	
   O	
  
A	
   D	
   E	
   N	
   R	
   O	
  
A	
   D	
   E	
   N	
   O	
   R	
  
i=2:	
  
i=3:	
  
i=4:	
  
i=5:	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   7	
  
Selection Sort
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   8	
  
Selec%on	
  Sort	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   9	
  
Selec%on	
  Sort	
  
public void straightSelectionSort(int[] v, int n){
int j, i, maior;
for(j = n-1; j >= 1; j--){
// Encontrar o maior, de 0 a j
maior = 0;
for(i = 1; i <= j; i++){
if(v[i] > v[maior])
maior = i;
}
swap(v, j, maior);
}
return;
}	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   10	
  
Complexidade	
  Computacional	
  
•  Selec%on	
  Sort	
  
– T	
  =	
  O(n2)	
  
•  Comparação	
  da	
  eficiência	
  dos	
  algoritmos:	
  
1.	
  Inser%on	
  Sort	
  
2.	
  Selec%on	
  Sort	
  
3.	
  Bubble	
  Sort	
  (faz	
  muitas	
  trocas	
  de	
  chaves)	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   11	
  
Complexidade	
  Computacional	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   12	
  
Desvantagens	
  
•  O	
  fato	
  de	
  o	
  conjunto	
  já	
  estar	
  ordenado	
  não	
  
ajuda	
  em	
  nada	
  (o	
  número	
  de	
  comparações	
  
con0nua	
  o	
  mesmo)	
  
•  O	
  algoritmo	
  não	
  é	
  estável,	
  isto	
  é,	
  os	
  registros	
  
com	
  chaves	
  iguais	
  nem	
  sempre	
  irão	
  manter	
  a	
  
mesma	
  posição	
  rela0va	
  de	
  antes	
  do	
  início	
  da	
  
ordenação	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   13	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   14	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   15	
  
Imagens	
  
•  hcp://www.caelum.com.br/imagens/curso/cs14-­‐imagem.jpg	
  	
  
•  hcp://www.showmesavings.com/images/target.gif	
  	
  
•  hcp://sandersconsul0ng.com/Portals/58319/images/checklist.jpg	
  	
  
•  hcp://www.classichitspaulista.com.br/wp-­‐content/uploads/2010/12/correios-­‐triagem.jpg	
  	
  
•  hcp://www.blackboard.com/resources/connec0ons/SEARCH-­‐1.jpg	
  	
  
•  hcp://sta0c.howstuffworks.com/gif/how-­‐to-­‐plant-­‐trees-­‐shrubs-­‐and-­‐vines-­‐47.jpg	
  	
  
•  hcp://ffodissahnerak.files.wordpress.com/2007/11/grafo.gif	
  	
  
•  hcp://xpress.superpedido.com.br/Imagens/Capas200502/8536301236.jpg	
  	
  
•  hcp://imagem.buscape.com.br/capas/livros/205/031/190x190_8560031502.jpg	
  	
  
•  hcp://d.yimg.com/gg/u/7a62d58d03887ad0ea7e52fa078e0c0de7b19db6.jpeg	
  	
  
•  hcp://www.computertrainingpacaya.com/images/big-­‐0ck.jpg	
  	
  
•  hcp://dbestwebdeveloper.com/pinoy-­‐website-­‐developer/wp-­‐content/uploads/
2010/07/12282598707YbD6m.jpg	
  	
  
•  hcp://lake.k12.fl.us/moe/lib/moe/test.jpg	
  	
  
•  hcp://acccbuzz.files.wordpress.com/2010/12/grade.jpg	
  	
  
•  hcp://www.vshandw.com/images/icon.informa0on.gif	
  	
  
•  hcp://cs.bloomington.k12.mn.us/modules/groups/homepagefiles/cms/1597624/Image/Icons/
calendar+icon3.png	
  	
  
•  hcp://www.goldb.org/goldblog/cmg_images/real_programmers_binary.jpg	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   16	
  
Obrigado	
  
	
  
Daniel	
  Arndt	
  Alves	
  
daniel.alves@mackenzie.br	
  
Daniel	
  Arndt	
  Alves	
   Selec0on	
  Sort	
   17	
  

Mais conteúdo relacionado

Mais procurados

ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - Ordenação
Anderson Zardo
 
Listas duplamente encadeadas
Listas duplamente encadeadasListas duplamente encadeadas
Listas duplamente encadeadas
Jailson Torquato
 
Árvores: Conceitos e binárias
Árvores:  Conceitos e bináriasÁrvores:  Conceitos e binárias
Árvores: Conceitos e bináriasSérgio Souza Costa
 
Shell sort
Shell sortShell sort
Shell sort
Felipe Weizenmann
 
Sorting types and Algorithms
Sorting types and AlgorithmsSorting types and Algorithms
Sorting types and Algorithms
Ali Khan
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas Estáticas
Leinylson Fontinele
 
Trabalho métodos de ordenação
Trabalho métodos de ordenaçãoTrabalho métodos de ordenação
Trabalho métodos de ordenaçãoDaiana de Ávila
 
sorting and searching.pptx
sorting and searching.pptxsorting and searching.pptx
sorting and searching.pptx
ParagAhir1
 
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Leinylson Fontinele
 
Bubble Sort Algorithm Presentation
Bubble Sort Algorithm Presentation Bubble Sort Algorithm Presentation
Bubble Sort Algorithm Presentation
AhmedAlbutty
 
Abstract data types (adt) intro to data structure part 2
Abstract data types (adt)   intro to data structure part 2Abstract data types (adt)   intro to data structure part 2
Abstract data types (adt) intro to data structure part 2
Self-Employed
 
Heap and heapsort
Heap and heapsortHeap and heapsort
Heap and heapsort
Amit Kumar Rathi
 
Algoritmos de busca
Algoritmos de buscaAlgoritmos de busca
Algoritmos de busca
Fernando Ferreira
 
Operações em Árvores Binárias
Operações em Árvores BináriasOperações em Árvores Binárias
Operações em Árvores Bináriaselliando dias
 
Algoritmos de ordenamiento externos
Algoritmos de ordenamiento externosAlgoritmos de ordenamiento externos
Algoritmos de ordenamiento externos
Angel Vázquez Patiño
 
How bubble sort works
How bubble sort worksHow bubble sort works
How bubble sort works
Gaurav Kumar
 
Linear search algorithm
Linear search algorithmLinear search algorithm
Linear search algorithm
NeoClassical
 

Mais procurados (20)

ShellSort - Ordenação
ShellSort - OrdenaçãoShellSort - Ordenação
ShellSort - Ordenação
 
Recursividade
RecursividadeRecursividade
Recursividade
 
Listas duplamente encadeadas
Listas duplamente encadeadasListas duplamente encadeadas
Listas duplamente encadeadas
 
Árvores: Conceitos e binárias
Árvores:  Conceitos e bináriasÁrvores:  Conceitos e binárias
Árvores: Conceitos e binárias
 
Shell sort
Shell sortShell sort
Shell sort
 
Sorting types and Algorithms
Sorting types and AlgorithmsSorting types and Algorithms
Sorting types and Algorithms
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas Estáticas
 
Trabalho métodos de ordenação
Trabalho métodos de ordenaçãoTrabalho métodos de ordenação
Trabalho métodos de ordenação
 
sorting and searching.pptx
sorting and searching.pptxsorting and searching.pptx
sorting and searching.pptx
 
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
Pesquisa e Ordenação - Aula 12 - Pesquisa de Dados (Sequencial e Binária)
 
Aula 07 - lista linear
Aula 07 - lista linearAula 07 - lista linear
Aula 07 - lista linear
 
Bubble Sort Algorithm Presentation
Bubble Sort Algorithm Presentation Bubble Sort Algorithm Presentation
Bubble Sort Algorithm Presentation
 
Sorting
SortingSorting
Sorting
 
Abstract data types (adt) intro to data structure part 2
Abstract data types (adt)   intro to data structure part 2Abstract data types (adt)   intro to data structure part 2
Abstract data types (adt) intro to data structure part 2
 
Heap and heapsort
Heap and heapsortHeap and heapsort
Heap and heapsort
 
Algoritmos de busca
Algoritmos de buscaAlgoritmos de busca
Algoritmos de busca
 
Operações em Árvores Binárias
Operações em Árvores BináriasOperações em Árvores Binárias
Operações em Árvores Binárias
 
Algoritmos de ordenamiento externos
Algoritmos de ordenamiento externosAlgoritmos de ordenamiento externos
Algoritmos de ordenamiento externos
 
How bubble sort works
How bubble sort worksHow bubble sort works
How bubble sort works
 
Linear search algorithm
Linear search algorithmLinear search algorithm
Linear search algorithm
 

Destaque

métodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sortmétodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sort
Alessandro Trevisan
 
Selection sort
Selection sortSelection sort
Selection sortasra khan
 
Selection sort
Selection sortSelection sort
Selection sortJay Patel
 
Complexidade de algoritmos insertion, selection e bubble sort.
Complexidade de algoritmos insertion, selection e bubble sort.Complexidade de algoritmos insertion, selection e bubble sort.
Complexidade de algoritmos insertion, selection e bubble sort.Júlio Rocha
 
The selection sort algorithm
The selection sort algorithmThe selection sort algorithm
The selection sort algorithm
David Burks-Courses
 
3.4 selection sort
3.4 selection sort3.4 selection sort
3.4 selection sort
Krish_ver2
 
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
Thalita Chaves
 
Bubble Sort
Bubble SortBubble Sort
Bubble Sort
geeortiz
 
Analisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble SortAnalisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble Sort
Humano Terricola
 
Ordenamiento burbuja
Ordenamiento burbuja Ordenamiento burbuja
Ordenamiento burbuja
luis cedeño
 
ordenacao shellsort quicksort em C
ordenacao shellsort quicksort em Cordenacao shellsort quicksort em C
ordenacao shellsort quicksort em C
Alessandro Trevisan
 
Big oh Representation Used in Time complexities
Big oh Representation Used in Time complexitiesBig oh Representation Used in Time complexities
Big oh Representation Used in Time complexities
LAKSHMITHARUN PONNAM
 
Selection sort 1
Selection sort 1Selection sort 1
Selection sort 1
asmhemu
 
Selection sort
Selection sortSelection sort
Selection sort
amna izzat
 
Sorting
SortingSorting
Sorting
Gopi Saiteja
 
Shell sort
Shell sortShell sort
Shell sort
Rajendran
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenação
Gustavo Carvalho
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise Edition
Daniel Arndt Alves
 

Destaque (20)

métodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sortmétodos ordenação C, bolha, selection sort e insertion sort
métodos ordenação C, bolha, selection sort e insertion sort
 
Selection sort
Selection sortSelection sort
Selection sort
 
Selection sort
Selection sortSelection sort
Selection sort
 
Selection sort
Selection sortSelection sort
Selection sort
 
Complexidade de algoritmos insertion, selection e bubble sort.
Complexidade de algoritmos insertion, selection e bubble sort.Complexidade de algoritmos insertion, selection e bubble sort.
Complexidade de algoritmos insertion, selection e bubble sort.
 
The selection sort algorithm
The selection sort algorithmThe selection sort algorithm
The selection sort algorithm
 
3.4 selection sort
3.4 selection sort3.4 selection sort
3.4 selection sort
 
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
 
Bubble Sort
Bubble SortBubble Sort
Bubble Sort
 
Analisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble SortAnalisys of Selection Sort and Bubble Sort
Analisys of Selection Sort and Bubble Sort
 
Ordenamiento burbuja
Ordenamiento burbuja Ordenamiento burbuja
Ordenamiento burbuja
 
ordenacao shellsort quicksort em C
ordenacao shellsort quicksort em Cordenacao shellsort quicksort em C
ordenacao shellsort quicksort em C
 
Big oh Representation Used in Time complexities
Big oh Representation Used in Time complexitiesBig oh Representation Used in Time complexities
Big oh Representation Used in Time complexities
 
Selection sort 1
Selection sort 1Selection sort 1
Selection sort 1
 
Selection sort
Selection sortSelection sort
Selection sort
 
Sorting
SortingSorting
Sorting
 
Shell sort
Shell sortShell sort
Shell sort
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenação
 
Metodo burbuja
Metodo burbujaMetodo burbuja
Metodo burbuja
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise Edition
 

Mais de Daniel Arndt Alves

Sessao
SessaoSessao
Variaveis Superglobais
Variaveis SuperglobaisVariaveis Superglobais
Variaveis Superglobais
Daniel Arndt Alves
 
Programacao Modular
Programacao ModularProgramacao Modular
Programacao Modular
Daniel Arndt Alves
 
Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHP
Daniel Arndt Alves
 
Introducao ao PHP
Introducao ao PHPIntroducao ao PHP
Introducao ao PHP
Daniel Arndt Alves
 
Arquitetura web
Arquitetura webArquitetura web
Arquitetura web
Daniel Arndt Alves
 
HTML Básico
HTML BásicoHTML Básico
HTML Básico
Daniel Arndt Alves
 
Histórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de ProgramaçãoHistórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de Programação
Daniel Arndt Alves
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
Daniel Arndt Alves
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
Daniel Arndt Alves
 
Java RMI
Java RMIJava RMI
Conceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosConceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos Distribuidos
Daniel Arndt Alves
 
Exercicios - Java Swing Listeners
Exercicios - Java Swing ListenersExercicios - Java Swing Listeners
Exercicios - Java Swing Listeners
Daniel Arndt Alves
 
Gerenciadores de Layout
Gerenciadores de LayoutGerenciadores de Layout
Gerenciadores de Layout
Daniel Arndt Alves
 
Hiearquia Window
Hiearquia WindowHiearquia Window
Hiearquia Window
Daniel Arndt Alves
 
Exercicios - Java Swing
Exercicios - Java SwingExercicios - Java Swing
Exercicios - Java Swing
Daniel Arndt Alves
 
Java AWT
Java AWTJava AWT
Java Swing
Java SwingJava Swing
Java Swing
Daniel Arndt Alves
 
Estrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoEstrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de Ensino
Daniel Arndt Alves
 
Estrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da DisciplinaEstrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da Disciplina
Daniel Arndt Alves
 

Mais de Daniel Arndt Alves (20)

Sessao
SessaoSessao
Sessao
 
Variaveis Superglobais
Variaveis SuperglobaisVariaveis Superglobais
Variaveis Superglobais
 
Programacao Modular
Programacao ModularProgramacao Modular
Programacao Modular
 
Strings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHPStrings, Arrays e Manipulação Datas em PHP
Strings, Arrays e Manipulação Datas em PHP
 
Introducao ao PHP
Introducao ao PHPIntroducao ao PHP
Introducao ao PHP
 
Arquitetura web
Arquitetura webArquitetura web
Arquitetura web
 
HTML Básico
HTML BásicoHTML Básico
HTML Básico
 
Histórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de ProgramaçãoHistórico de Participação do Mackenzie na Maratona de Programação
Histórico de Participação do Mackenzie na Maratona de Programação
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
Java RMI
Java RMIJava RMI
Java RMI
 
Conceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos DistribuidosConceitos Básicos de Objetos Distribuidos
Conceitos Básicos de Objetos Distribuidos
 
Exercicios - Java Swing Listeners
Exercicios - Java Swing ListenersExercicios - Java Swing Listeners
Exercicios - Java Swing Listeners
 
Gerenciadores de Layout
Gerenciadores de LayoutGerenciadores de Layout
Gerenciadores de Layout
 
Hiearquia Window
Hiearquia WindowHiearquia Window
Hiearquia Window
 
Exercicios - Java Swing
Exercicios - Java SwingExercicios - Java Swing
Exercicios - Java Swing
 
Java AWT
Java AWTJava AWT
Java AWT
 
Java Swing
Java SwingJava Swing
Java Swing
 
Estrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de EnsinoEstrutura de Dados II - Plano de Ensino
Estrutura de Dados II - Plano de Ensino
 
Estrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da DisciplinaEstrutura de Dados II - Apresentação da Disciplina
Estrutura de Dados II - Apresentação da Disciplina
 

Último

Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Ligia Galvão
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
WALTERDECARVALHOBRAG
 
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdfEJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
Escola Municipal Jesus Cristo
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
Letras Mágicas
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
analuisasesso
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
jbellas2
 
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Luana Neres
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
NatySousa3
 
Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.
RafaelNeves651350
 
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdfArundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Ana Da Silva Ponce
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
goncalopecurto
 
A nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptxA nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptx
juserpa07
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
Escola Municipal Jesus Cristo
 
Fato X Opinião (Língua Portuguesa 9º Ano).pptx
Fato X Opinião (Língua Portuguesa 9º Ano).pptxFato X Opinião (Língua Portuguesa 9º Ano).pptx
Fato X Opinião (Língua Portuguesa 9º Ano).pptx
MariaFatima425285
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
Escola Municipal Jesus Cristo
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
WelidaFreitas1
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
profesfrancleite
 
Sinais de pontuação
Sinais de pontuaçãoSinais de pontuação
Sinais de pontuação
Mary Alvarenga
 
PROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.pptPROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.ppt
betokg
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
IsabelPereira2010
 

Último (20)

Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
 
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdfEJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
EJA -livro para professor -dos anos iniciais letramento e alfabetização.pdf
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
 
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de CarvalhoO sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
O sentimento nacional brasiliero, segundo o historiador Jose Murlo de Carvalho
 
Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
 
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
Aula 2 - 6º HIS - Formas de registro da história e da produção do conheciment...
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
 
Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.Manejo de feridas - Classificação e cuidados.
Manejo de feridas - Classificação e cuidados.
 
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdfArundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
 
A nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptxA nossa mini semana 2706 2906 Juliana.pptx
A nossa mini semana 2706 2906 Juliana.pptx
 
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...proposta curricular  ou plano de cursode lingua portuguesa eja anos finais ( ...
proposta curricular ou plano de cursode lingua portuguesa eja anos finais ( ...
 
Fato X Opinião (Língua Portuguesa 9º Ano).pptx
Fato X Opinião (Língua Portuguesa 9º Ano).pptxFato X Opinião (Língua Portuguesa 9º Ano).pptx
Fato X Opinião (Língua Portuguesa 9º Ano).pptx
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
 
Sinais de pontuação
Sinais de pontuaçãoSinais de pontuação
Sinais de pontuação
 
PROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.pptPROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.ppt
 
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
DeClara n.º 76 MAIO 2024, o jornal digital do Agrupamento de Escolas Clara de...
 

Selection Sort

  • 1. Universidade Presbiteriana Mackenzie   Aula  4:  Selec+on  Sort   Prof. Ms. Daniel Arndt Alves Faculdade  de  Computação  e  Informá+ca   Computação e Informática Faculdade de Estrutura  de   Dados  II   Daniel  Arndt  Alves   Selec0on  Sort   1  
  • 2. Tópicos  da  Aula   •  Selec%on  Sort   •  Complexidade  Computacional   •  Desvantagens   Daniel  Arndt  Alves   Selec0on  Sort   2  
  • 3. •  Um  dos  algoritmos  mais  simples   •  Mais  recomendado  para  conjuntos  pequenos   •  Procedimento:   – Selecione  o  menor  item  do  conjunto  e  troque-­‐o   com  o  item  que  está  na  posição  i   – Repita  essas  operações  com  os  demais  itens  até   que  reste  apenas  um  elemento   Selection Sort Daniel  Arndt  Alves   Selec0on  Sort   3  
  • 4. Selection Sort •  O algoritmo de ordenação selection sort permite ordenar os valores num vetor, por exemplo: a[0] <= a[1] <= a[2] … <= a[a.length-1] •  O algoritmo selection sort coloca o menor item em a[0], o seguinte menor item em a[1], e assim sucessivamente até ao último item. for(i = 0; i <a.length-1; i++) coloca o io item menor em a[i] Daniel  Arndt  Alves   Selec0on  Sort   4  
  • 5. Selection Sort •  Selection sort começa por procurar o menor item do array e troca-o com o item a[0]. •  Selection sort continua procurando o próximo menor item e troca-o com as sucessivos itens do array a. •  Selection sort termina quando já só existe um item. Daniel  Arndt  Alves   Selec0on  Sort   5  
  • 6. Selec%on  Sort   •  Na  primeira  etapa  seleciona-­‐se  o  maior  valor   entre  N  elementos  e  move-­‐se  para  a  “área  de   saída”   •  Na  segunda  etapa  seleciona-­‐se  o  maior  valor   entre  N-­‐1  elementos  e  move-­‐se  para  a  “área   de  saída”   •  Repete-­‐se  o  processo  até  que  N  registros   tenham  sido  selecionados   Daniel  Arndt  Alves   Selec0on  Sort   6  
  • 7. Selec%on  Sort   O   R   D   E   N   A   1   2   3   4   5   6   Chaves  Iniciais:   i=1:   A   R   D   E   N   O   A   D   R   E   N   O   A   D   E   R   N   O   A   D   E   N   R   O   A   D   E   N   O   R   i=2:   i=3:   i=4:   i=5:   Daniel  Arndt  Alves   Selec0on  Sort   7  
  • 8. Selection Sort Daniel  Arndt  Alves   Selec0on  Sort   8  
  • 9. Selec%on  Sort   Daniel  Arndt  Alves   Selec0on  Sort   9  
  • 10. Selec%on  Sort   public void straightSelectionSort(int[] v, int n){ int j, i, maior; for(j = n-1; j >= 1; j--){ // Encontrar o maior, de 0 a j maior = 0; for(i = 1; i <= j; i++){ if(v[i] > v[maior]) maior = i; } swap(v, j, maior); } return; }   Daniel  Arndt  Alves   Selec0on  Sort   10  
  • 11. Complexidade  Computacional   •  Selec%on  Sort   – T  =  O(n2)   •  Comparação  da  eficiência  dos  algoritmos:   1.  Inser%on  Sort   2.  Selec%on  Sort   3.  Bubble  Sort  (faz  muitas  trocas  de  chaves)   Daniel  Arndt  Alves   Selec0on  Sort   11  
  • 12. Complexidade  Computacional   Daniel  Arndt  Alves   Selec0on  Sort   12  
  • 13. Desvantagens   •  O  fato  de  o  conjunto  já  estar  ordenado  não   ajuda  em  nada  (o  número  de  comparações   con0nua  o  mesmo)   •  O  algoritmo  não  é  estável,  isto  é,  os  registros   com  chaves  iguais  nem  sempre  irão  manter  a   mesma  posição  rela0va  de  antes  do  início  da   ordenação   Daniel  Arndt  Alves   Selec0on  Sort   13  
  • 14. Daniel  Arndt  Alves   Selec0on  Sort   14  
  • 15. Daniel  Arndt  Alves   Selec0on  Sort   15  
  • 16. Imagens   •  hcp://www.caelum.com.br/imagens/curso/cs14-­‐imagem.jpg     •  hcp://www.showmesavings.com/images/target.gif     •  hcp://sandersconsul0ng.com/Portals/58319/images/checklist.jpg     •  hcp://www.classichitspaulista.com.br/wp-­‐content/uploads/2010/12/correios-­‐triagem.jpg     •  hcp://www.blackboard.com/resources/connec0ons/SEARCH-­‐1.jpg     •  hcp://sta0c.howstuffworks.com/gif/how-­‐to-­‐plant-­‐trees-­‐shrubs-­‐and-­‐vines-­‐47.jpg     •  hcp://ffodissahnerak.files.wordpress.com/2007/11/grafo.gif     •  hcp://xpress.superpedido.com.br/Imagens/Capas200502/8536301236.jpg     •  hcp://imagem.buscape.com.br/capas/livros/205/031/190x190_8560031502.jpg     •  hcp://d.yimg.com/gg/u/7a62d58d03887ad0ea7e52fa078e0c0de7b19db6.jpeg     •  hcp://www.computertrainingpacaya.com/images/big-­‐0ck.jpg     •  hcp://dbestwebdeveloper.com/pinoy-­‐website-­‐developer/wp-­‐content/uploads/ 2010/07/12282598707YbD6m.jpg     •  hcp://lake.k12.fl.us/moe/lib/moe/test.jpg     •  hcp://acccbuzz.files.wordpress.com/2010/12/grade.jpg     •  hcp://www.vshandw.com/images/icon.informa0on.gif     •  hcp://cs.bloomington.k12.mn.us/modules/groups/homepagefiles/cms/1597624/Image/Icons/ calendar+icon3.png     •  hcp://www.goldb.org/goldblog/cmg_images/real_programmers_binary.jpg   Daniel  Arndt  Alves   Selec0on  Sort   16  
  • 17. Obrigado     Daniel  Arndt  Alves   daniel.alves@mackenzie.br   Daniel  Arndt  Alves   Selec0on  Sort   17