dai miei vekki appunti di algoritmi e strutture dati...

codice:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

void insertion_sort(int *, int);

void main(){

	int i;
	int nr = 10;
	int *myArray = (int *)malloc(nr*sizeof(int));

	srand(time(NULL));
	for(i = 0; i < nr; i++)
		*(myArray+i) = rand()%100;

	insertion_sort(myArray, nr);

	for(i = 0; i < nr; i++)
		printf("%d ", *(myArray+i));
}

void insertion_sort(int *array, int nr){

	int i, j, temp;

	for(i = 1; i < nr; i++){
		temp = *(array+i);
		j = i - 1;
		while((j >= 0) && (temp < *(array+j))){
			*(array+(j+1)) = *(array+j);
			j--;
			}
		*(array+(j+1)) = temp;
		}
}