Advertisement
Guest User

Quick Sort

a guest
Nov 28th, 2014
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.64 KB | None | 0 0
  1. # include <iostream>
  2. using namespace std;
  3.  
  4. int n, arr[100];
  5.  
  6. void swap_int( int *a, int *b ) {
  7.     int temp = *a;
  8.     *a = *b;
  9.     *b = temp;
  10. }
  11.  
  12. void q_sort(int f, int l) {
  13.     if( f>=l ) return;
  14.  
  15.     int i=f+1, j=l;
  16.  
  17.     do {
  18.         while( arr[i]<arr[f] ) i++;
  19.         while( arr[j]>arr[f] ) j--;
  20.         if( i<j ) swap_int( &arr[i], &arr[j] );
  21.     } while( i<j );
  22.  
  23.     swap_int( &arr[f], &arr[j] );
  24.  
  25.     q_sort( f, j-1 );
  26.     q_sort( j+1, l );
  27. }
  28.  
  29. int main() {
  30.     cin>>n;
  31.     for( int i=0; i<n; i++ ) cin>>arr[i];
  32.  
  33.     q_sort(0,n-1);
  34.  
  35.     for( int i=0; i<n; i++ ) cout << arr[i] << " "; cout << endl;
  36.  
  37.     return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement