Developer Toolbox

Ordenação por seleção

Encontra o menor valor que falta ordenar e o troca para a próxima posição. Faz pouquíssimas trocas, mas sempre o mesmo número de comparações.

  • Ω(n²)
  • Θ(n²)
  • O(n²)
  • O(1)
  • não
  • sim
  • comparando
  • movendo
  • mínimo atual
  • na posição final
0 / 399 passos

Comparações: 0 · pares comparados: 0 de 276 comparado (mais escuro = mais vezes) sendo comparado

Comparações Trocas

Clique em reproduzir: as linhas mostram como o custo cresce

Clique em reproduzir ou avance passo a passo pelo algoritmo.

Espaço: reproduzir ou pausar. Setas esquerda e direita: avançar passo a passo. Home e End: pular.

Experimente: Escolha uma lista invertida. O número de comparações é exatamente o mesmo que em qualquer outra lista.

Como funciona

Procura o menor valor na parte não ordenada e troca esse valor com o primeiro dessa parte. Assim, mais um valor fica na posição final. Sempre confere todos os valores que faltam, mesmo se a lista já estiver ordenada.

Quando é uma boa escolha

Útil quando mover dados custa caro, mas ler é barato, porque faz no máximo uma troca por posição. Na maioria dos outros casos, a ordenação por inserção é a melhor opção simples.