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

Нужен алгоритм сортировки   Найти похожие ветки 

 
Konstantin ©   (2003-02-09 16:37) [0]

Добрый день!

Нет ли у кого простейшего алгоритма для сортировки массива из целых чисел.
Скорость принципиального значения не имеет.


 
uw ©   (2003-02-09 16:42) [1]

Это из модуля Classes.

procedure QuickSort(SortList: PPointerList; L, R: Integer;
SCompare: TListSortCompare);
var
I, J: Integer;
P, T: Pointer;
begin
repeat
I := L;
J := R;
P := SortList^[(L + R) shr 1];
repeat
while SCompare(SortList^[I], P) < 0 do
Inc(I);
while SCompare(SortList^[J], P) > 0 do
Dec(J);
if I <= J then
begin
T := SortList^[I];
SortList^[I] := SortList^[J];
SortList^[J] := T;
Inc(I);
Dec(J);
end;
until I > J;
if L < J then
QuickSort(SortList, L, J, SCompare);
L := I;
until I >= R;
end;



 
Романов Р.В. ©   (2003-02-09 16:45) [2]

http://delphibase.endimus.com/?action=viewtopic&topic=mathsort


 
___ALex___ ©   (2003-02-09 17:12) [3]

открой обычный Turbo Pascal 7.0 там в экзамплах есть файл
QSORT.PAS - рекурсивный алгоритм быстрой сортировки


 
uw ©   (2003-02-09 17:21) [4]

Вот медленная сортировка:

procedure Sort(var a: array of Integer);
var
i, j: Integer;
t: Integer;
begin
for i := 1 to High(a) do
for j := i downto 1 do
if a[j] < a[j - 1] then begin
t := a[j - 1];
a[j - 1] := a[j];
a[j] := t;
end;
end;



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

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



Память: 0.45 MB
Время: 0.019 c
14-53258
blackman
2003-02-01 21:56
2003.02.17
Не прогой единой жив человек !


1-52981
Xok
2003-02-10 12:14
2003.02.17
Как DateTimePicker у присвоить пустое значение?


7-53291
SERGGL
2002-12-16 12:16
2003.02.17
обращение к сегменту кода под виндой


3-52738
sanci
2003-01-30 12:54
2003.02.17
Не работает Lookup поле в Query.


1-53075
Yrtimd
2003-02-06 20:39
2003.02.17
Разбор




   Наверх