111

#include <stdio.h>
void qSort(int *a,int s,int e);
void swap(int *x,int *y);
int main()
{
int a[]={44,33,22,66,55,11,88,77};
int n=8;
qSort(a,0,n-1);
for(int i=0;i<n;i++){
printf("%d ",a[i]);
}
return 0;
}
void qSort(int *a,int s,int e){
if(s>=e){
return;
}
//int i=s,j=e,k=a[0];//k=a[s]!!!
int i=s,j=e,k=a[s];
while(i!=j){
while(i<j&&a[j]>=k){
j–;
}
swap(&a[i],&a[j]);
while(i<j&&a[i]<=k){
i++;
}
swap(&a[i],&a[j]);
}
qSort(a,s,i-1);
qSort(a,i+1,e);
}
void swap(int *x,int *y){
int tmp;
tmp=*x;
*x=*y;
*y=tmp;
}

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页