Скачиваний:
33
Добавлен:
02.05.2014
Размер:
1.23 Кб
Скачать
Program binary_insertion_sort;
const
max = 10000;
type myArray = array[0..max] of integer;
var dimension, i : integer;
arr, sortArray : myArray;

function binaryInsertionSort( var arr : myArray; const length : integer ) : myArray;
var i, j, m, L, R : integer;
item : integer;
begin
for i := 1 to length-1 do begin
item := arr[i];
L := 0;
R := i;
while ( L < R ) do begin
m := (L+R) div 2;
if arr[m] <= item then L := m + 1 else R := m;
end;
for j := i downto R+1 do begin
arr[j] := arr[j-1];
end;
arr[R] := item;
end;
binaryInsertionSort := arr;
end;

begin
writeln('Binary Insertion Sort.');
write('Enter array dimension: '); readln( dimension );
write('Enter '); write( dimension ); write(' elements: ');
for i := 0 to dimension-1 do
read(arr[i]);
sortArray := binaryInsertionSort( arr, dimension );
write('Sorting array: ');
for i := 0 to dimension-1 do begin
write( sortArray[i] ); write(' '); end;
writeln;
writeln('Press any key to continue...');
readln;
readln;
end.