Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.56 KB | None | 0 0
  1. #pragma once
  2. #include <iostream>
  3. #include <vector>
  4. using namespace std;
  5. void swap(vector<int> &v, int x, int y) {
  6. int temp = v[x];
  7. v[x] = v[y];
  8. v[y] = temp;
  9.  
  10. }
  11. void quicksort(vector<int>& vec, int L, int R) {
  12. int i, j, mid, piv;
  13. i = L;
  14. j = R;
  15. mid = L + (R - L) / 2;
  16. piv = vec[mid];
  17.  
  18. while (i<R || j>L) {
  19. while (vec[i] < piv)
  20. i++;
  21. while (vec[j] > piv)
  22. j--;
  23.  
  24. if (i <= j) {
  25. swap(vec, i, j);
  26. i++;
  27. j--;
  28. }
  29. else {
  30. if (i < R)
  31. quicksort(vec, i, R);
  32. if (j > L)
  33. quicksort(vec, L, j);
  34. return;
  35. }
  36. }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement