void
mergeSort(int list[], int size)
{
int
i;
int
mid = size/2;
int
*tmp;
if (size > 1) {
mergeSort(&list[0], mid);
mergeSort(&list[mid], size-mid);
tmp = mergeList(&list[0], mid, &list[mid], size-mid);
if (tmp != NULL) {
for (i = 0; i < size; i++) {
list[i] = tmp[i];
}
}
free(tmp);
}
}
for Java code see Main p. 607