Algoritmos em Python

Insertion sort em Python

O método lembra a organização de cartas na mão.

O que é Insertion sort em Python?

O método lembra a organização de cartas na mão.

Insira cada elemento na parte já ordenada.

Quando usar?

  • Entender algoritmos e estruturas de dados.
  • Observar cada etapa e tratar casos de borda.
  • Comparar tempo de execução e memória.

Visualizador de Insertion sort em Python

Use Executar ou Passo para acompanhar cada comparação e movimento dos dados.

Código de exemplo

Executar código →
main.py
def insertion_sort(values):
    result = values.copy()
    for index in range(1, len(result)):
        current = result[index]
        position = index - 1
        while position >= 0 and result[position] > current:
            result[position + 1] = result[position]
            position -= 1
        result[position + 1] = current
    return result

print(insertion_sort([9, 5, 1, 4, 3]))

Saída esperada

[1, 3, 4, 5, 9]

Como funciona

Valores maiores são deslocados até liberar a posição; funciona bem em dados quase ordenados.

Altere os valores e execute o programa no compilador Python online CodeUtility sem instalar Python.

Exercícios práticos

Altere as entradas e teste casos de borda antes de usar conjuntos de dados maiores.

  1. Teste entrada vazia, um elemento e duplicados.
  2. Mostre o estado após cada etapa.
  3. Compare o desempenho com outra solução.
Executar no IDE Python →