Menu
Coddy logo textTech

Implementation (Part 2)

Lição 6 de 9 do curso Insertion Sort - Série DSA da Coddy.

Cenário: Ordenando [5, 2, 9, 1, 5]

Passo 1: Estado Inicial

  • Array Original: [5, 2, 9, 1, 5]
  • Imagine isso como nossa mão de cartas (ou um array de números).

Passo 2: Primeiro Elemento (i=1, key=2)

  • Começamos com a segunda carta (elemento): key = 2.
  • Compare 2 com 5 (o único elemento ordenado até agora).
  • Como 2 é menor, deslocamos o 5 para a direita e inserimos o 2 em seu lugar.
  • Array Atualizado: [2, 5, 9, 1, 5]

Passo 3: Segundo Elemento (i=2, key=9)

  • Movemos para a próxima carta: key = 9.
  • Compare 9 com 5.
  • Como 9 é maior, não há necessidade de deslocamento.
  • Array Atualizado: [2, 5, 9, 1, 5] (sem alterações)

Passo 4: Terceiro Elemento (i=3, key=1)

  • Movemos para a próxima carta: key = 1.
  • Compare 1 com 9, depois com 5.
  • Desloque 9 e 5 para a direita, abrindo espaço para o 1.
  • Array Atualizado: [1, 2, 5, 9, 5]

Passo 5: Quarto Elemento (i=4, key=5)

  • Movemos para a próxima carta: key = 5.
  • Compare 5 com 9.
  • Como 5 é menor, não há necessidade de deslocamento.
  • Array Atualizado: [1, 2, 5, 9, 5] (sem alterações)

Passo 6: Quinto Elemento (i=5, key=5)

  • Movemos para a última carta: key = 5.
  • Compare 5 com 9.
  • Como 5 é menor, não há necessidade de deslocamento.
  • Array Atualizado: [1, 2, 5, 5, 9]

Resultado Final:

  • Array Ordenado: [1, 2, 5, 5, 9]

Em cada passo, estamos escolhendo uma carta (elemento), comparando-a com as que já estão ordenadas e colocando-a no lugar certo, deslocando as outras se necessário. Repetimos esse processo até que todo o array esteja ordenado.

challenge icon

Desafio

Fácil

Agora, implemente o loop interno, que realiza a ordenação para cada elemento.

 

Complete a ordenação dentro da função insertionSort.

A função também deve imprimir os elementos do array ao final, um por um, com uma nova linha entre eles.

Use as lições anteriores e a dica como referência :)

Experimente você mesmo

def insertionSort(arr):
    for i in range(1, len(arr)):
        key = arr[i]
        print(key)

Todas as lições de Insertion Sort - Série DSA