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);
}
我写的快速排序算法,大佬们帮我看看有啥问题吗,感谢
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
JonathanYan 2019-09-18 10:26关注没问题。。。。。。。。。。。。。。。。。。。。。。。。。。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报