写代码的话,首先确定递归的三个参数,分别是数值,左边界,右边界
void quick_sort(int*A, int l, int r){
if(r > l){
int mid = A[l];
int i = l, j = r;
while(i < j){
while(i < j && A[j] >= mid){
j--;
}
if(i < j){
A[i] = A[j];
}
while(i < j && A[i] <= mid){
i++;
}
if(i < j){
A[j] = A[i];
}
}
A[i] = mid;
quick_sort(A, l, i-1);
quick_sort(A, i+1, r);
}
}
本文详细介绍了一种高效的排序算法——快速排序。通过递归的方式,在数组中选择一个基准元素,并将数组分为两部分:一部分包含小于等于基准的元素,另一部分包含大于基准的元素。之后再对这两部分分别进行同样的操作,直到整个数组有序。文章提供了快速排序的具体实现代码。
250

被折叠的 条评论
为什么被折叠?



