Вниз
Скачать: CL | DM;

Быстрая сортировка   Найти похожие ветки 

 
Юрий   (2003-05-21 17:07) [0]

Если нужно быстро отсортировать данные, то в VC используют функцию qsort.
Есть ли что-то подобное на Delphi?


 
mdw ©   (2003-05-21 18:56) [1]

Функции нет.
1. В TList есть метод Sort куда передаешь функцию, возвращающую результат сравнения;
2. В примере работы с потоками (Delphi\Demos\Threads) есть реализация трех методов сортировки. Можно оттуда выдрать, если самому лень писать.


 
Gandalf ©   (2003-05-22 14:25) [2]


> Если нужно быстро отсортировать данные, то в VC используют
> функцию qsort.
> Есть ли что-то подобное на Delphi?



> Функции нет.


Есть процедуры :)

SortData
SortIntegerArray
SortDwordArray


 
mdw ©   (2003-05-22 15:16) [3]

>SortData
SortIntegerArray
SortDwordArray


А в каком модуле?


 
Palladin ©   (2003-05-22 15:23) [4]


> Gandalf © (22.05.03 14:25)

? и где ты такое надыбал?


> Юрий (21.05.03 17:07)

%Delphi%\Demos\Threads\SortThds.pas
там аж три вида... дерзай...

ЗЫ а вообще нас еще в школе им учили... кроме QSort...


 
mdw ©   (2003-05-22 15:27) [5]

Томожу. В Kol.pas.


 
Serginio   (2003-05-22 15:53) [6]

>> Palladin © (22.05.03 15:23)
>> ЗЫ а вообще нас еще в школе им учили... кроме QSort...
А используется QuickSort как самый быстрый.


 
Palladin ©   (2003-05-22 15:58) [7]

вот поэтому про QSort я уже узнал на первом курсе...


 
Юрий   (2003-05-22 16:05) [8]

определение:
procedure SortData( const Data: Pointer; const uNElem: Dword;
const CompareFun: TCompareEvent;
const SwapProc: TSwapEvent );

В qsort (VC) нужна одна функция в качестве параметра для сравнения элементов, а тут две. Просьба коротко пояснить назначение CompareFun и SwapProc (В чём суть?).


 
icWasya ©   (2003-05-22 17:16) [9]

ну прямо из названия -
CompareFun - для сравнения элементов
должна выработать результат
-1 первый меньше второго
+1 Первый больше второго
0 равны
SwapProc - для перестановки элементов



 
Mystic ©   (2003-05-22 17:20) [10]

> А используется QuickSort как самый быстрый.

Подразумевается "в среднем" самый быстрый. Гарантированный результат у пирамидальной сортировки все же меньше :)


 
Dimka Maslov ©   (2003-05-22 18:24) [11]

http://delphibase.endimus.com/?action=viewfunc&topic=mathsort&id=10088



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
3-2788
me2
2003-05-14 14:02
2003.06.02
Использование сетевого ресурса в строке подключения БД


1-2974
ArtemB
2003-05-21 13:15
2003.06.02
OnMouseMove


14-3174
Kirill
2003-05-08 17:43
2003.06.02
7-zip


1-2949
Marina_S
2003-05-20 21:55
2003.06.02
как правильно использовать метод ShellExecute


1-2970
Azbul
2003-05-21 10:26
2003.06.02
запись шестнадцатиричного значения в файл




   Наверх