int partition(int arr[], int p, int r) {
int i = p - 1;
int x = arr[r];
for (int j = p; j < r; j++)
{
if (arr[j] > x) {
i++;
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
int temp = arr[i + 1];
arr[i + 1] = arr[r];
arr[r] = temp;
return i + 1;
}
void quickSort(int arr[], int p, int r) {
if (p < r)
{
int q = partition(arr, p, r);
quickSort(arr, p, q - 1);
quickSort(arr, q + 1, r);
}
}
int main() {
int arr[] = {1,99,3,5,8,6};
quickSort(arr, 0, 5);
for (int i = 0; i < 6; i++)
{
cout << arr[i];
}
}
快速排序(Quick Sort)
最新推荐文章于 2024-10-10 22:59:02 发布