快速排序
#include <iostream>
#include <vector>
using namespace std;
int partition(vector<int> &a, int left, int right) {
int pivot = a[left];
while (left < right) {
while (left<right&&a[right]>pivot) {
--right;
}
a[left] = a[right];
while (left<right&&a[left]<pivot) {
++left;
}
a[right] = a[left];
}
a[left] = pivot;
return left;
}
void quickSort(vector<int> &a,int left, int right){
if (left < right) {
int base = partition(a, left, right);
quickSort(a, left, base-1);
quickSort(a, base + 1, right);
}
return;
}
int main() {
vector<int> a;
int b;
while (cin >> b) {
a.push_back(b);
if (cin.get() == '\n') {
quickSort(a, 0, a.size() - 1);
cout << "the result:" << endl;
for (int i = 0; i < a.size(); ++i) {
cout << a[i] << " ";
}
}
}
return 0;
}