fork download
  1. #include <iostream>
  2. #include <time.h>
  3. using namespace std;
  4.  
  5. void printarray(int qarray[], int l, int r){
  6. for(int i=0; i<l; ++i)
  7. std::cout << qarray[i] << ' ';
  8. std::cout << '[';
  9. for(int i=l; i<=r; ++i)
  10. std::cout << qarray[i] << ' ';
  11. std::cout << ']';
  12. for(int i=r+1; i<26; ++i)
  13. std::cout << qarray[i] << ' ';
  14. std::cout << std::endl;
  15. }
  16.  
  17. void quickSort(int qarray[], int l, int r){
  18.  
  19. int i = l, j = r;
  20. int temp;
  21. int pivot = qarray[(l+r)/2];
  22.  
  23. printarray(qarray, l, r);
  24.  
  25. //partitioning
  26. while(i<=j){
  27. while(qarray[i]< pivot)
  28. i++;
  29. while(qarray[j] > pivot)
  30. j--;
  31. if(i<=j){
  32.  
  33. temp = qarray[i];
  34. qarray[i] = qarray[j];
  35. qarray[j] = temp;
  36. i++;
  37. j--;
  38.  
  39. }
  40. }
  41.  
  42. //Recursion of the quicksort algorithm
  43. printarray(qarray, l, r);
  44. if(l < j)
  45. quickSort(qarray,l,j);
  46. printarray(qarray, l, r);
  47. if(i < r)
  48. quickSort(qarray,i,r);
  49. }
  50.  
  51. int main(){
  52. int myArray[26] ={4,2,5,6,1,3,17,14,67,45,32,66,88,
  53. 78,69,92,93,21,25,23,71,61,59,60,30,79};
  54. std::cout << "Unsorted: ";
  55. printarray(myArray, 0, 25);
  56.  
  57. clock_t tStart = clock();
  58. quickSort(myArray,0,25);
  59. double seconds = clock() / double(CLOCKS_PER_SEC);
  60.  
  61. std::cout << "Sorted: ";
  62. printarray(myArray, 0, 25);
  63. cout << "This program has been running for " << seconds << " seconds." << endl;
  64.  
  65. return 0;
  66. }
Success #stdin #stdout 0.01s 2724KB
stdin
Standard input is empty
stdout
Unsorted: [4 2 5 6 1 3 17 14 67 45 32 66 88 78 69 92 93 21 25 23 71 61 59 60 30 79 ]
[4 2 5 6 1 3 17 14 67 45 32 66 88 78 69 92 93 21 25 23 71 61 59 60 30 79 ]
[4 2 5 6 1 3 17 14 67 45 32 66 79 78 69 30 60 21 25 23 71 61 59 93 92 88 ]
[4 2 5 6 1 3 17 14 67 45 32 66 79 78 69 30 60 21 25 23 71 61 59 ]93 92 88 
[4 2 5 6 1 3 17 14 59 45 32 61 23 25 21 30 60 69 78 79 71 66 67 ]93 92 88 
[4 2 5 6 1 3 17 14 59 45 32 61 23 25 21 30 60 ]69 78 79 71 66 67 93 92 88 
[4 2 5 6 1 3 17 14 30 45 32 21 23 25 61 59 60 ]69 78 79 71 66 67 93 92 88 
[4 2 5 6 1 3 17 14 30 45 32 21 23 25 ]61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 5 6 1 3 14 17 30 45 32 21 23 25 ]61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 5 6 1 3 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 5 3 1 6 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 5 3 1 ]6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 1 3 5 ]6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[4 2 1 3 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 4 3 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 4 3 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 [4 3 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 [3 4 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 [3 4 ]5 6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 3 4 5 ]6 14 17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 3 4 5 6 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 [6 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 [6 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 [6 14 ]17 30 45 32 21 23 25 61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 3 4 5 6 14 17 30 45 32 21 23 25 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 30 45 32 21 23 25 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 30 25 23 21 32 45 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 30 25 23 21 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 25 30 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 ]25 30 32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 ]25 30 32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 ]25 30 32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 25 30 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 [25 30 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 [25 30 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 [25 30 ]32 45 61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 [17 21 23 25 30 32 45 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 [32 45 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 [32 45 ]61 59 60 69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 [32 45 ]61 59 60 69 78 79 71 66 67 93 92 88 
[1 2 3 4 5 6 14 17 21 23 25 30 32 45 61 59 60 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 [61 59 60 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 [59 61 60 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 [59 61 60 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 [61 60 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 [60 61 ]69 78 79 71 66 67 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 [60 61 ]69 78 79 71 66 67 93 92 88 
[1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 69 78 79 71 66 67 ]93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [69 78 79 71 66 67 ]93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [69 78 67 71 66 79 ]93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [69 78 67 71 66 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 78 71 69 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 ]78 71 69 79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 ]78 71 69 79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 ]78 71 69 79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 78 71 69 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 [78 71 69 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 [69 71 78 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 [69 71 78 ]79 93 92 88 
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 [66 67 69 71 78 79 ]93 92 88 
[1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 69 71 78 79 93 92 88 ]
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 69 71 78 79 [93 92 88 ]
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 69 71 78 79 [88 92 93 ]
1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 69 71 78 79 [88 92 93 ]
Sorted: [1 2 3 4 5 6 14 17 21 23 25 30 32 45 59 60 61 66 67 69 71 78 79 88 92 93 ]
This program has been running for 0.01 seconds.