Write fast sorting in C++
时间: 2023-02-23 15:11:05 浏览: 90
sorting_C++_源码
快速排序是一种常用的排序算法,它通过分治法对数据进行排序。它选择一个基准数,并将数组中小于基准数的元素放在它的左边,大于基准数的元素放在它的右边,然后递归地对左右两个子数组进行排序。
C语言中的快速排序代码如下:
```
void quickSort(int arr[], int left, int right)
{
int i, j, pivot, temp;
if (left < right)
{
pivot = left;
i = left;
j = right;
while (i < j)
{
while (arr[i] <= arr[pivot] && i < right)
{
i++;
}
while (arr[j] > arr[pivot])
{
j--;
}
if (i < j)
{
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
temp = arr[pivot];
arr[pivot] = arr[j];
arr[j] = temp;
quickSort(arr, left, j - 1);
quickSort(arr, j + 1, right);
}
}
```
阅读全文