我写的快速排序算法,大佬们帮我看看有啥问题吗,感谢
问题描述:
void quickSort(vector<int> &a, int l, int r) {
if (r <= l) {
return;
}
int left = l, right = r;
//第一个数为基准
int sta = a[left];
while (left < right) {
while (a[right] > sta) {
right--;
}
if (left < right) {
swap(a[left], a[right]);
}
while (a[left] < sta) {
left++;
}
if (left < right) {
swap(a[left], a[right]);
}
}
//此时left和right都等于基准的索引
quickSort(a, l, left - 1);
quickSort(a, right + 1, r);
}
答
没问题。。。。。。。。。。。。。。。。。。。。。。。。。。