#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int partition(int A[],int low,int high){
int pivot=A[low];
while(low<high){
while(low<high&&A[high]>=pivot)
high--;
A[low]=A[high];
while(low<high&&A[low]<=pivot)
low++;
A[high]=A[low];
}
A[low]=pivot;
return low;
}
void QuickSort(int A[],int low,int high){
if(low<high){
int pivotops=partition(A,low,high);
QuickSort(A,low,pivotops-1);
QuickSort(A,pivotops+1,high);
}
}
void Printf(int A[],int n){
for(int i=0;i<n;i++){
printf("%d ",A[i]);
}
}
int main(){
int A[11]={6,7,8,5,1,4,2,3,15,7,6};
int n=11;
QuickSort(A,0,n-1);
Printf(A,n);
return 0;
}
交换排序--快速排序
最新推荐文章于 2023-12-01 23:14:38 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)