Hallo Gemeinde,
wir hatten eben eine Diskussion darüber, welcher der beiden Algorithmen wohl übersichtlicher und/ oder schneller ist (mal davon abgesehen, daß beide stink langsam sind). Mich würde eure Meinung interessieren.
Liebe Grüße
Thomas
Delphi-Quellcode:
type
TVek = array of double;
procedure BubbleSort1 (var A: TVek);
var
I, J: integer;
T: double;
begin
for I:= 0 to Length(A)-2 do
for J:= I+1 to Length(A)-1 do
if A[I] > A[J] then
begin
T:= A[I];
A[I]:= A[J];
A[J]:= T;
end;
end;
procedure BubbleSort2 (var A: TVek);
var
i, LastChecked: Integer;
temp: double;
done: Boolean;
begin
LastChecked := 0;
repeat
done := True;
inc(LastChecked);
for i := Low(A) to High(A) - LastChecked do
begin
if A[i] > A[i + 1] then
begin
temp := A[i];
A[i] := A[i + 1];
A[i + 1] := temp;
done := False;
end;
end;
until done;
end;