234567891011121314151617181920212223procedure CountingSort(var X: array of integer; min, max: integer);var counter: array[0..100000] of integer; i, j, index: Integer;begin // для всех элементов массива // указываем значение ноль for i:=0 to high(counter) do tmpX[i]:=0; for i:=min to max do counter[ar[i]]:=counter[ar[i]]+1; // устанавливаем значение // в правильную позицию index:=min; for i:=min to high(counter)-1 do begin for j:=0 to counter[i]-1 do begin ar[index]:=i; index:=index+1; end; end;end;