|
|
|
| Пожалуйста помогите мне с написанием на Турбо Си "быстрой сортировки"(Метод Хоара) двумерного массива! | |
|
|
|
|
|
|
|
для: zzDimazz
(02.12.2007 в 12:11)
| | А двумерный массив чего (чисел, строк, объектов) и какой критерий сортировки (т.е. что на входе, а что должно быть на выходе)? | |
|
|
|
|
|
|
|
для: cheops
(03.12.2007 в 03:24)
| | Алгоритм
Быстрая сортировка использует стратегию «разделяй и властвуй». Шаги алгоритма таковы:
Выбираем в массиве некоторый элемент, который будем называть опорным элементом.
Операция разделения массива: реорганизуем массив таким образом, чтобы все элементы, меньшие или равные опорному элементу, оказались слева от него, а все элементы, большие опорного — справа от него.
Рекурсивно упорядочиваем подсписки, лежащие слева и справа от опорного элемента.
Базой рекурсии являются списки, состоящие из одного или двух элементов, которые уже упорядочены. Алгоритм всегда завершается, поскольку за каждую итерацию он ставит по крайней мере один элемент на его окончательное место.
массив чисел на входе
его нужно отсортировать по убыванию
воть мое :
/*
void fastsort(float *msv,int l ,int r)
{
int i,j,ki=0;
float cache;
i=l;j=r;
while(i!=j)
{
if(*(msv+i) < *(msv+j))
{
*(msv+i)=cache;
*(msv+i)=*(msv+j);
*(msv+j)=cache;
(ki==0)? ki=1:ki=0 ;
}
(ki==0)? j--:i++;
}
if(l<j) fastsort(&msv,l,j);
if(i<r) fastsort(&msv,i,r);
}*/
///
|
| |
|
|
|