LibraryList [v4.0]
Se incluyó una función en la cual maneja el algoritmo quicksort para ordenar los elementos de un array.
Ejemplo:
#include <stdio.h>
#include <lst/List.h>
int intCompare(const void* p1, const void* p2)
{
return *(int*)p1 - *(int*)p2;
}
int main(void)
{
int nums[] = {13, 5, 10, 20, 0, 3, -1, 0};
ArrayList* listNums = newArrayList();
for(int i = 0; i != 8; ++i)
add(listNums, nums[i]);
/* Ordena los elementos usando el algoritmo quicksort. */
invoke_quicksort(listNums, intCompare);
/* Imprime la lista ordenada. */
foreach(int, num, listNums)
printf("%d\n", *num);
delete(listNums);
return 0;
}
También se puede hacer uso de la macro sort para no tener que invocar invoke_quicksort de forma explícita:
sort(listNums, intCompare);