Заменить функцию qsort на более быструю
Руслан19 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
30.11.2007
Нужно заменить функцию qsort на более быструю (не меньше чем в 10 раз). Язык С.
Есть массив из M (например, 1000) элементов, нужно найти n (например, 400) элементов с наибольшими значениями.
Важна сортировка только тех элементов, которые попадают в нужные.
Сейчас используется, но работает медленно:
int znach_cmp(const void *a, const void *b)
{
const double *ia = (const double *)a;
const double *ib = (const double *)b;
return (*ia *ib);
}
double* tmpNodes = new double [nNum];
qsort(tmpNodes, nNum, sizeof(double), znach_cmp);