Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Вниз

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

 
Юрий   (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 вся ветка

Форум: "Основная";
Текущий архив: 2003.06.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
9-2731
Джастер
2002-12-18 18:46
2003.06.02
glParticles.pas


3-2753
corte ™
2003-05-13 09:15
2003.06.02
Кто нить знает? Как решить проблему.


7-3181
Stranger
2003-04-01 16:02
2003.06.02
Очистка клавиатурного буфера


11-2838
AlbertHakimov
2002-09-07 15:50
2003.06.02
Своиство Align на компоненте Panel-ь


14-3165
*pavel
2003-05-15 14:43
2003.06.02
tif & Delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский