Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.72 KB | None | 0 0
  1. self.swap = function(arr, i, j) {
  2. var temp = arr[i];
  3. arr[i] = arr[j];
  4. arr[j] = temp;
  5. }
  6.  
  7. self.partition = function (arr, pivot, left, right){
  8. var pivotValue = arr[pivot],
  9. partitionIndex = left;
  10.  
  11. for(var i = left; i < right; i++){
  12. if(arr[i] < pivotValue){
  13. swap(arr, i, partitionIndex);
  14. partitionIndex++;
  15. }
  16. }
  17. swap(arr, right, partitionIndex);
  18. return partitionIndex;
  19. }
  20.  
  21. self.quickSort = (arr, left, right) => {
  22. var len = arr.length,
  23. pivot,
  24. partitionIndex;
  25.  
  26. if(left < right){
  27. pivot = right;
  28. partitionIndex = partition(arr, pivot, left, right);
  29.  
  30. //sort left and right
  31. quickSort(arr, left, partitionIndex - 1);
  32. quickSort(arr, partitionIndex + 1, right);
  33. }
  34. return arr;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement