快速法排序(7)

2019-01-27 18:24

27 for i:=1 to n do writeln(a[i]); 28 end. 2): 1 var 2 a,b:array[1..100000]of longint; 3 i,n:longint; 4 procedure qsort(head,tail:longint); 5 var i,j,x,p:longint; 6 begin 7 if head>=tail then exit;i:=head;j:=tail; 8 p:=random(j-i+1)+i; 9 x:=a[p]; 10 a[p]:=a[head]; 11 while i=x) do dec(j); 14 a[i]:=a[j]; 15 while(ii+1) thenqsort(i+1,tail); 21 end; 22 begin 23 readln(n); 24 for i:=1 to n do read(a[i]); 25 randomize; 26 qsort(1,n); 27 for i:=1 to n do writeln(a[i]); 28 end. C++语言 1 #include 2 #include 3 using namespace std; 4 int partion(int a[],int p,int r){ 5 //rand 6 srand( (unsigned)time( NULL ) ); 7 int e=rand()%(r-p+1)+p; 8 int tem; 9 tem=a[e];a[e]=a[r];a[r]=tem; 10 int x=a[r], i=p-1; 11 for (int j=p;j

13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

tem=a[i+1];a[i+1]=a[j];a[j]=tem; i++; } }

tem=a[r];a[r]=a[i+1];a[i+1]=tem; return i+1; }

void QuickSort(int a[],int p,int r){ if (p

int q=partion(a,p,r); QuickSort(a,p,q-1); QuickSort(a,q+1,r); } }

int main(){

int array[]={0,-2,11,-4,13,-5,14,-43}; QuickSort(array,0,7); for(int i=0;i<7;i++) cout<


快速法排序(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018加拿大留学高中申请时间 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: