#include <iostream> using namespace std;
#define N 10
int Partition(int *a, int low, int high) { int temp; temp = a[low]; while (low < high) { while (low < high && temp < a[high]) { high--; } if (low < high) { a[low] = a[high]; low++; } while (low < high && a[low] < temp) { low++; } if (low < high) { a[high] = a[low]; high--; } } a[low] = temp; return low; }
void QuickSort(int *a, int low, int high) { int i; if (low < high) { i = Partition(a, low, high); QuickSort(a, low, i - 1); QuickSort(a, i + 1, high); } }
int main() { int low, high, temp; int *a = new int[N];
for (int i = 0; i < N; i++) { cin >> a[i]; }
QuickSort(a, 0, N - 1);
for (int i = 0; i < N; i++) { cout << a[i] << " "; } cout << endl; return 0; }
|