Sorting algorithms/Bubble sort: Difference between revisions

Line 652:
TArray = array[0..15] of TItem; // static array
{$ENDIF}
 
{$DEFINE TESTSORTED}
 
procedure BubbleSort(var A: TArray);
var
Item: TItem;
IK, L, J: Integer;
{$IFDEF TESTSORTED}
Sorted: Boolean;
{$ENDIF}
 
begin
for IL:= Low(A) + 1 to High(A) do begin;
K:= High(A);
{$IFDEF TESTSORTED}
repeat
Sorted:= True;
for J:= High(A) downto IL do begin
{$ENDIF}
for J:= High(A) downto I do begin
if A[J - 1] > A[J] then begin
Item:= A[J - 1];
A[J - 1]:= A[J];
A[J]:= Item;
Sorted K:= TrueJ;
{$IFDEF TESTSORTED}
Sorted:= False;
{$ENDIF}
end;
end;
L:= K + 1;
{$IFDEF TESTSORTED}
until L > High(A);
if Sorted then Break;
{$ENDIF}
end;
end;
 
Anonymous user