自己写的一个delphi正整数快速排序

type
  TIntArr= array of word; procedure MyQSort(var arr: TIntArr; low: word; high: word); //word可以改为自己需要的类型
var
i, j , x, k : word;
begin
if low < high then
begin
i:= low;
j:= high + 1;
while True do
begin
repeat
Inc(i);
until ((arr[low] <= arr[i])or(i = high));
repeat
Dec(j);
until ((arr[low] >= arr[j])or(j = low));
if i<j then
begin
x:= arr[j];
arr[j]:= arr[i];
arr[i]:= x;
end
else
Break; end; x:= arr[j];
arr[j]:= arr[low];
arr[low]:=x; if(j>1)then
MyQSort(arr, low, j-1);
if(high-j-1 > 1) then
MyQSort(arr, j+1, high); end; end;
上一篇:键盘、游戏、ASCII码引出的一系列问题


下一篇:视觉训练营 Day 4 —— 作业日-车辆保险应用