int partition(int arr[], int low, int high);
void quickSort(int arr[], int low, int high)
{
int pivotKey = partition(arr, low, high);
quickSort(arr, low, pivotKey - 1);
quickSort(arr, pivotKey + 1, high);
}
int partition(int arr[], int low, int high)
{
arr[0] = arr[low];
while (low < high)
{
while (low < high && arr[high] > arr[0]) high--;
arr[low] = arr[high];
while (low < high && arr[low] < arr[0]) low++;
arr[high] = arr[low];
}
return low;
}
转载于:https://www.cnblogs.com/kimimaro/archive/2011/03/29/1999302.html
本文详细介绍了一种高效的排序算法——快速排序。通过递归的方式将数组分为较小和较大的两个子数组,并对这两个子数组进行排序。文章提供了快速排序的实现代码,包括partition分区函数和递归调用的快速排序函数。
2352

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



