请帮我用c++写一段快速排序代码
时间: 2023-03-07 12:30:10 浏览: 65
#include <stdio.h>void quick_sort(int arr[], int left, int right)
{
if(left >= right)
return;
int i = left;
int j = right;
int key = arr[left];
while (i < j)
{
while (i < j && arr[j] >= key)
j--;
arr[i] = arr[j];
while (i < j && arr[i] <= key)
i++;
arr[j] = arr[i];
}
arr[i] = key;
quick_sort(arr, left, i-1);
quick_sort(arr, i+1, right);
}int main()
{
int arr[] = {3, 7, 2, 8, 4, 9, 1};
int len = sizeof(arr) / sizeof(arr[0]);
quick_sort(arr, 0, len-1);
for(int i = 0; i < len; i++)
printf("%d ", arr[i]);
printf("\n");
return 0;
}