Insertion Sort I

Insertion Sort I

The mission is in Blocked Mode. Access to the solutions is blocked for a day or two (even after you share your own), until we'll have enough solutions for you to check. All users who've solved the mission will get the notifications about their opening.

O algoritmo de insertion sort ordena uma lista inserindo cada elemento na posição correta dentro de uma sublista já ordenada. O objetivo deste exercício é fornecer uma visualização clara de cada etapa desse processo, mostrando o estado da lista após cada inserção, para ajudar a compreender melhor como funciona o insertion sort.

:example

Na imagem acima, você encontra uma ilustração do algoritmo em funcionamento.

Entrada Uma lista de inteiros desordenada.

Saída: Uma lista de listas, onde cada sublista representa o estado da lista original após cada etapa de inserção realizada pelo algoritmo de insertion sort. A lista original antes de qualquer inserção não deve ser incluída como o primeiro elemento da lista de saída.

Example:

    insertion_sort_steps([3, 1, 2]) >> [[1, 3, 2], [1, 2, 3]]
insertion_sort_steps([4, 3, 2, 1]) >> [[3, 4, 2, 1], [2, 3, 4, 1], [1, 2, 3, 4]]
insertion_sort_steps([1, 2, 3]) == []