Advertisement
Guest User

Untitled

a guest
Oct 24th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <cstdio>
  4. #include <cmath>
  5. #include <math.h>
  6. #include <iomanip>
  7. #include <string>
  8. #include <stdio.h>
  9. #include <stdlib.h>
  10.  
  11. using namespace std;
  12.  
  13. int part(vector<int> a, int l, int r){
  14. cout<<endl;
  15. for (int i=l;i<r;i++){
  16. cout<<a[i]<<" ";
  17. }
  18. cout<<endl;
  19. int v = a[(l + r) / 2];
  20. int i = l;
  21. int j = r;
  22. while (i <= j){
  23. while (a[i] < v)
  24. i++;
  25. while (a[j] > v)
  26. j--;
  27. if (i <= j)
  28. swap(a[i++], a[j--]);
  29. }
  30. return (j);
  31. }
  32.  
  33.  
  34. void quicksort(vector<int> a, int l, int r){
  35. if (l < r){
  36. int q = part(a, l, r);
  37. quicksort(a, l, q);
  38. quicksort(a, q + 1, r);
  39. }
  40. }
  41.  
  42. int main(){
  43. freopen("sort.txt", "r", stdin);
  44. freopen("sortw.txt", "w", stdout);
  45. int k,x;
  46. cin>>k;
  47. vector<int> a;
  48. while (cin>>x){
  49. a.push_back(x);
  50. }
  51. int l=0,r=a.size();
  52. quicksort(a,l,r);
  53. for (int i=0;i<r;i++){
  54. cout<<a[i]<<" ";
  55. }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement