3 Quicksort générique
On généralise le cas du tri d’un tableau d’entiers pour trier des
tableaux de type quelconque. Il s’agit de proposer votre propre
implémentation de la fonction qsort() de la bibliothèque
standard (man 3 qsort).
Écrivez le code source de la fonction de prototype suivant :
void quicksort(void *base, int nelem, int size,
int(*compar)(const void *, const void *));
avec
-
base une référence sur le premier élément du
tableau à trier ;
- nelem le nombre d’éléments du tableau à trier ;
- size la taille, en octets, d’un élément du tableau ;
- compar un pointeur sur la fonction de
comparaison. Cette fonction accepte deux références sur les
éléments à comparer et retourne la valeur de la comparaison selon
le principe de la fonction .