Вниз
Скачать: 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.011 c
3-52733
Чайник
2003-01-30 10:40
2003.02.17
DBEdit и поле даты


1-53021
htte
2003-02-10 19:18
2003.02.17
Как? Stringgrid


3-52784
swamp
2003-01-31 12:10
2003.02.17
Исключение из SQL поймать в ADO


3-52776
Толян
2003-01-31 10:36
2003.02.17
Как работает TField.Value???


3-52785
dimmu3
2003-01-31 13:33
2003.02.17
количество клиентов, которое может быть соединено с IB-сервером




   Наверх