文章目录
快速排序
- 递归–乱序数组
- 关键思想:划分
int partition(int A[],int L,int R){
int mid=A[L];
while(L<R){
while(A[R]>=mid && L<R) R--;
A[L]=A[R];
while(A[L]<=mid && L<R) L++;
A[R]=A[L];
}
// 最后mid值的存储
A[L]=mid;
return L;
}
void QuickSort(int A[],int L,int R){
if(L>=R) return; //递归终止
int mid=partition(A,L,R);
QuickSort(A,L,M-1); //左半部分
QuickSort(A,L+1,R); //右半部分
}
2011真题
2013真题
2018真题