#include #include #include using namespace std; vector a; int n; void print() { for(int i=0; i 1; i--) { bool change = false; for (int j = 0; j < i; j++) { if (a[j] > a[j+1]) { swap(j, j+1); change = true; } } if (! change) return; } } void insert_sort() { for (int i = 1; i < n; i++) { int j = i; int val = a[i]; while (j > 0 && a[j-1] > val) { a[j-1] = a[j]; j--; } a[j] = val; } } void select_sort() { for (int i = 0; i < n; i++) { int min = i; int j; for (j = i + 1; j < n; j++) { if (a[j] < a[min]) { min = j; } } swap(min,i); } } void quick_sort(int lo0, int hi0) { int lo = lo0; int hi = hi0; if (lo >= hi) return; if (lo == hi - 1) { if (a[lo] > a[hi]) swap(lo,hi); return; } int pivot = a[(lo + hi) / 2]; a[(lo + hi) / 2] = a[hi]; a[hi] = pivot; while (lo < hi) { while (a[lo] <= pivot) { lo++; } while (pivot <= a[hi]) { hi--; } if (lo < hi) swap(lo,hi); } a[hi0] = a[hi]; a[hi] = pivot; quick_sort(lo0, lo-1); quick_sort(hi+1, hi0); } int main() { cin >> n; a.resize(n); for(int i=0; i> a[i]; stl_sort(); // bubble_sort(); // insert_sort(); // select_sort(); // quick_sort(0,n-1); print(); }