#include<iostream> #include <vector> using namespace std; void printArray(int a[],int n){ for(int i=0;i<n;i++){ cout<<a[i]<<" "; } } void QuickSort(int *a,int start,int end){ int i=start; int j=end; int key=a[i];//基准位 if(i>=j){ return ; } while(i<j){ while(i<j&&a[j]>=key){//后面的数大于基准位 j--; } a[i]=a[j]; while(i<j&&a[i]<=key){ i++; } a[j]=a[i]; } a[i]=key; QuickSort(a,start,i-1); QuickSort(a,i+1,end); } int main() { int a[10] = {8, 5, 2, 3, 4, 6, 9, 1, 7, 10}; int tmp = 0; QuickSort(a,0,10); printArray(a, 10); return 0; }
C++快速排序
最新推荐文章于 2022-03-12 23:29:11 发布