Developer Toolbox

Ordenação por inserção

Constrói uma parte ordenada à esquerda, um valor de cada vez. Cada novo valor é retirado e anda para a esquerda até encontrar um valor menor.

  • Ω(n)
  • Θ(n²)
  • O(n²)
  • O(1)
  • sim
  • sim
  • a comparar
  • a mover
  • na mão
  • parte ordenada
  • na posição final
0 / 372 passos

Pares fora de ordem: 154 (no início: 154) fora de ordem posto em ordem

Comparações Deslocações

Carregue em Reproduzir: as linhas mostram como o custo cresce

Carregue 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: saltar.

Experimente: Escolha uma lista quase ordenada. Quase nada se desloca, por isso termina em muito poucos passos.

Como funciona

A parte da esquerda está sempre ordenada. Retira-se o valor seguinte, cada valor maior da parte ordenada desloca-se uma posição para a direita e o valor entra no espaço vazio. É assim que muita gente ordena as cartas que tem na mão.

Quando é uma boa escolha

Boa escolha para listas curtas e para listas quase ordenadas, onde é muito rápido. As bibliotecas de ordenação reais usam-no nos pedaços pequenos da lista, dentro de métodos mais rápidos.