Advertisement
catalyn

quicksort

Oct 9th, 2015
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.51 KB | None | 0 0
  1. #include<iostream>
  2. using namespace std;
  3. int v[100];
  4. int poz(int v[],int s,int d)
  5. {int i,j,di,dj;
  6. i=s;
  7. j=d;
  8. di=0;
  9. dj=1;
  10. while(i<j)
  11. {if(v[i]>v[j])
  12. {swap(v[i],v[j]);
  13. di=1-di;
  14. dj=1-dj;
  15. }
  16. i=i+di;
  17. j=j-dj;
  18. }
  19. return j;
  20. }
  21. void quick(int v[],int s,int d)
  22. {int m;
  23. if(s<d)
  24. {
  25. m=poz(v,s,d);
  26. quick(v,s,m-1);
  27. quick(v,m+1,d);
  28. }
  29.  
  30. }
  31. int main()
  32. {
  33. int n,i;
  34. cin>>n;
  35. for(i=1;i<=n;i++)
  36. cin>>v[i];
  37. quick(v,1,n);
  38. for(i=1;i<=n;i++)
  39. cout<<v[i]<<" ";
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement