Текущий архив: 2003.02.17;
Скачать: 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 вся ветка
Текущий архив: 2003.02.17;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.01 c