Insertion sort
L’insertion sort fa parte degli algoritmi di sorting.
Input Sequenza di valori .
Output Permutazione della sequenza tale che
title: Attenzione
Come costo computazionale calcoliamo i confronti eseguiti tra i valori di A.- si parte con il primo elemento che è ordinato, essendo l’unico

- si prende l’elemento successivo, e si valuta con quello precedente. Se quello nuovo è maggiore allora si lascia dove è, se invece è minore si scambiano
- fino a che non è il primo della lista, o è maggiore del precedente, si continua a spostare verso la testa

InsertionSort(A, n):
for j=1 to n-1:
i := j
while i > 0 AND A[i] < A[i-1] do
inverti A[i-1] e A[i]
i := i - 1
j := j + 1
Quindi quanti confronti si fanno? Fissato un j, si fanno al più j confronti, quindi si ha: