|| 返回 || 本站首页 ||奥赛信息||计算机基础||pascal基础||数据结构||经典算法||试题汇编||校本教程||自主练习||

|| 经典算法 >> 一躺快速排序法

双击自动滚屏 

   

一躺快速排序法

佚名

 

{快速排序法的一躺排序程序}

program kuaisu(input,output);

type

 arr=array[1..7] of integer;

var

  a:arr;

  i,j,k:integer;

 

  procedure sort(var a:arr;var m,n:integer);

  var

    x,p,q:integer;

  begin

    x:=a[m];

    repeat

      while ((m<n) and (a[n]>x)) do n:=n-1;

      p:=a[m];a[m]:=a[n];a[n]:=p;

      while ((m<n) and (a[m]<x)) do m:=m+1;

      p:=a[m];a[m]:=a[n];a[n]:=p

    until m=n

  end;

 

begin

   writeln('input 10 integer num:');

   i:=1;j:=1;k:=7;

   repeat

      read(a[i]);

      i:=i+1;

   until i>7;

   sort(a,j,k);

   for i:=1 to 7 do

      write(a[i]:4);

   writeln('j=',j:4,'k:',k:4)

end.


 
 

 

 
 
 

制作与维护:重庆市忠县中学 谭海