求用pascal写的排序算法(10分)

  • 主题发起人 主题发起人 yuren5340468
  • 开始时间 开始时间
Y

yuren5340468

Unregistered / Unconfirmed
GUEST, unregistred user!
求用pascal写的排序算法
 
这有一个:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=868687
 
快速排序
http://tew.nease.net/w_32.html
 
1.快速排序
procedure QuickSortt(var A: array of Integer);
procedure QuickSort(var A: array of Integer
iLo, iHi: Integer);
var
Lo, Hi, Mid, T: Integer;
begin
Lo := iLo;
Hi := iHi;
Mid := A[(Lo + Hi) div 2];
repeat
while A[Lo] < Mid do Inc(Lo);
while A[Hi] > Mid do Dec(Hi);
if Lo <= Hi then
begin
T := A[Lo];
A[Lo] := A[Hi];
A[Hi] := T;
Inc(Lo);
Dec(Hi);
end;
until Lo > Hi;
if Hi > iLo then QuickSort(A, iLo, Hi);
if Lo < iHi then QuickSort(A, Lo, iHi);
end;

begin
QuickSort(A, Low(A), High(A));
end;
2.冒泡排序
procedure BubbleSort(var A: array of Integer);
var
I, J, T: Integer;
begin
for I := High(A) downto Low(A) do
for J := Low(A) to High(A) - 1 do
if A[J] > A[J + 1] then
begin
T := A[J];
A[J] := A[J + 1];
A[J + 1] := T;
end;
end;

3.选择排序
procedure SelectionSort(var A: array of Integer);
var
I, J, T: Integer;
begin
for I := Low(A) to High(A) - 1 do
for J := High(A) downto I + 1 do
if A > A[J] then
begin
T := A;
A := A[J];
A[J] := T;
end;
end;
 
晕 PASCAL地 找本书 一大堆啊 偶大学时地数据结构书好多例子 非伪PASCAL
 
后退
顶部