基础算法 快速排序模板
1 #include <iostream> 2 using namespace std; 3 const int N = 10010; 4 int n, q[N]; 5 void quick_sort(int q[], int l, int r) { 6 if(l >= r) return ; 7 int x = q[l], i = l - 1, j = r + 1; 8 while(i < j) { 9 do i++; while(x > q[i]); 10 do j--; while(x < q[j]); 11 if(i < j) { 12 swap(q[i], q[j]); 13 } 14 } 15 quick_sort(q, l, j); 16 quick_sort(q, j + 1, r); 17 } 18 int main() { 19 cin >> n; 20 for(int i = 0; i < n; i++) { 21 cin >> q[i]; 22 } 23 quick_sort(q, 0, n - 1); 24 for(int i = 0; i < n; i++) { 25 cout << q[i] << " "; 26 } 27 cout << endl; 28 return 0; 29 }