写一个C++快速排序代码
时间: 2023-10-24 09:22:29 浏览: 65
快速排序c++代码
好的,请见下面的代码实现:
```
#include <stdio.h>
void quickSort(int arr[], int left, int right) {
int i = left, j = right;
int temp, pivot = arr[(left + right) / 2];
while (i <= j) {
while (arr[i] < pivot) {
i++;
}
while (arr[j] > pivot) {
j--;
}
if (i <= j) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
i++;
j--;
}
}
if (left < j) {
quickSort(arr, left, j);
}
if (i < right) {
quickSort(arr, i, right);
}
}
int main() {
int arr[] = { 99, 2, 44, 0, 1, 23, 66, 4, 56 };
int n = sizeof(arr) / sizeof(int);
quickSort(arr, 0, n - 1);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这是一个标准的快速排序实现,时间复杂度为 O(nlogn)。在实际应用中,快速排序是非常常见的一种排序算法,被广泛用于对大数据进行排序。
阅读全文