Innstikksortering er en enkel sorteringsalgoritme som bygger opp en sortert tabell (eller liste) et element av gangen. Algoritmen er mye mindre effektiv på store lister enn quicksort, haugsortering eller flettesortering. Innsettingsortering har likevel flere fordeler:
Når folk sorterer kort manuelt under kortspillet Bridge, bruker de vanligvis en metode som ligner på innstikksortering.
Eksempel på en løsning i java som sorterer elementene i listen a og printer de ut etterpå:
int[] a = {5,1,2,34,8,21,31,4124,0};
int til = a.length-1;
for(int fra = 0; fra<til; fra++){
if(a[fra]>a[fra+1]){
int tmp = a[fra+1];
int i = fra;
while(i >= 0 && a[i]>tmp){
a[i+1] = a[i];
i--;
}
a[i+1] = tmp;
}
}
for(int f = 0; f<a.length;f++){
System.out.println(a[f]);
}