Цитата:
Сообщение от lmikle
стандартная сортировка без учета знака. Т.е. я не вижу смысла в попытках писать оптимизированный алгоритм для такого случая. Просто сравнивать надо по модулю:
Код:
var
A : Array Of Double;
procedure SortArrayAbs;
var
I,J : Integer;
B : Double;
begin
For I := Low(A) To High(A)-1 Do
For J := I+1 To High(A) Do
If Abs(A[i]) > Abs(A[J]) Then
Begin
B := A[i];
A[i] := A[J];
A[J] := B;
End;
end;
|
Интересно, кто придумал деструктивные сортировки? Типа студентов учат (меня в т.ч. тоже так учили) именно на классической деструктивной сортировке.
В книге по хаскелю было сразу оговорено: «
НЕ НАДО ТАК!»