快速排序
快排有很多版本,我就写一个,后面知道了继续补
void Quicksort(int array[],int left,int right){
if(left<right){
int i=left,j=right,pivot=array[left];
while(i<j){
while(i<j&&array[j]>=pivot)j--;
if(i<j)array[i++]=array[j];
while(i<j&&array[i]<=pivot)i++;
if(i<j)array[j--]=array[i];
}
array[i]=pivot;
Quicksort(array,left,i-1);
Quicksort(array,i+1,right);
}
}
2020/02/22
void quicksort(int l,int r){
if(l>=r)return ;
int x=a[(l+r)/2];
int i=l-1,j=r+1;
while(i<j){
do i++;while(a[i]<x);
do j--;while(a[j]>x);
if(i<j)swap(a[i],a[j]);
}
quicksort(l,j);
quicksort(j+1,r);
}