#include <iostream>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <vector>
#include <stack>
#include <deque>
#include <queue>
#include <bitset>
#include <list>
#include <map>
#include <set>
#include <iterator>
#include <algorithm>
#include <functional>
#include <utility>
#include <sstream>
#include <climits>
#include <cassert>
#define BUG puts("here!!!");
using namespace std;
void quickSort(int a[], int left, int right) {
if(left < right) {
int l = left, r = right, x = a[l];
while(1) {
while(l < r && a[r] >= x) r--;
while(l < r && a[l] <= x) l++;
if(l >= r) break;
swap(a[r], a[l]);
}
swap(a[left], a[l]);
quickSort(a, left, l-1);
quickSort(a, l+1, right);
}
}
int main() {
int a[] = {8, 5, 4, 9, 2, 3, 6};
quickSort(a, 0, 6);
for(int i = 0; i <= 6; i++) {
cout << a[i] << ' ';
}
cout << endl;
return 0;
}
// 用例2 : 6, 5, 8, 6, 9, 1, 2
quickSort - 快速排序
最新推荐文章于 2024-10-09 09:49:04 发布
本文详细介绍了使用C++实现快速排序算法的过程,包括代码实现、核心思想和使用示例。通过具体实例展示了如何对数组进行高效排序。
676

被折叠的 条评论
为什么被折叠?



