Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,49 @@
|
|||
program TestSelectionSort;
|
||||
|
||||
{$APPTYPE CONSOLE}
|
||||
|
||||
{.$DEFINE DYNARRAY} // remove '.' to compile with dynamic array
|
||||
|
||||
type
|
||||
TItem = Integer; // declare ordinal type for array item
|
||||
{$IFDEF DYNARRAY}
|
||||
TArray = array of TItem; // dynamic array
|
||||
{$ELSE}
|
||||
TArray = array[0..15] of TItem; // static array
|
||||
{$ENDIF}
|
||||
|
||||
procedure SelectionSort(var A: TArray);
|
||||
var
|
||||
Item: TItem;
|
||||
I, J, M: Integer;
|
||||
|
||||
begin
|
||||
for I:= Low(A) to High(A) - 1 do begin
|
||||
M:= I;
|
||||
for J:= I + 1 to High(A) do
|
||||
if A[J] < A[M] then M:= J;
|
||||
Item:= A[M];
|
||||
A[M]:= A[I];
|
||||
A[I]:= Item;
|
||||
end;
|
||||
end;
|
||||
|
||||
var
|
||||
A: TArray;
|
||||
I: Integer;
|
||||
|
||||
begin
|
||||
{$IFDEF DYNARRAY}
|
||||
SetLength(A, 16);
|
||||
{$ENDIF}
|
||||
for I:= Low(A) to High(A) do
|
||||
A[I]:= Random(100);
|
||||
for I:= Low(A) to High(A) do
|
||||
Write(A[I]:3);
|
||||
Writeln;
|
||||
SelectionSort(A);
|
||||
for I:= Low(A) to High(A) do
|
||||
Write(A[I]:3);
|
||||
Writeln;
|
||||
Readln;
|
||||
end.
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
procedure SelectionSort(var S: string);
|
||||
var
|
||||
Lowest: Char;
|
||||
I, J, M, L: Integer;
|
||||
|
||||
begin
|
||||
L:= Length(S);
|
||||
for I:= 1 to L - 1 do begin
|
||||
M:= I;
|
||||
for J:= I + 1 to L do
|
||||
if S[J] < S[M] then M:= J;
|
||||
Lowest:= S[M];
|
||||
S[M]:= S[I];
|
||||
S[I]:= Lowest;
|
||||
end;
|
||||
end;
|
||||
Loading…
Add table
Add a link
Reference in a new issue