fork download
  1. #include <iostream>
  2. using namespace std;
  3. int* swap(int* a,int* b)
  4. {
  5. int* c;
  6. int* temp;
  7. temp=a;
  8. a=b;
  9. b=temp;
  10. return c;
  11. }
  12. int partition(int arr[],int low,int high)
  13. {
  14. int p=arr[low];
  15. int i=low;
  16. int j=high;
  17. while(i<j)
  18. {
  19. while(arr[i]<=p && i<=high-1)
  20. i++;
  21. while(arr[j]>p && j>=low+1)
  22. j--;
  23. if(i<j)
  24. swap(&arr[i],&arr[j]);
  25.  
  26. }
  27. swap(&arr[low],&arr[j]);
  28. return j;
  29. }
  30. void quicksort(int arr[],int low,int high)
  31. {
  32. if(low<high)
  33. {
  34. int pi=partition(arr,low,high);
  35. quicksort(arr,0,pi-1);
  36. quicksort(arr,pi+1,high);
  37. }
  38. }
  39. int main() {
  40. int arr[]={1,0,4,3,2};
  41. int n=sizeof(arr)/sizeof(arr[0]);
  42. quicksort(arr,0,n-1);
  43. for(int i=0;i<n;i++)
  44. cout<<arr[i]<<" ";
  45. return 0;
  46. }
Success #stdin #stdout 0s 5280KB
stdin
Standard input is empty
stdout
1 0 4 3 2