fork(1) download
  1. // SORTOWANIE SZYBKIE
  2. #include <cstdio>
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. void quicksort(int tab[], int left, int right)
  7. {
  8. int i=left;
  9. int j=right;
  10. int x=tab[(left+right)/2];
  11. do{
  12. while(tab[i]>x) i++;
  13. while(tab[j]<x) j--;
  14. if(i<=j){
  15. int temp=tab[i];
  16. tab[i]=tab[j];
  17. tab[j]=temp;
  18. i++;
  19. j--;
  20. }
  21. }while(i<=j);
  22. if(left<j) quicksort(tab,left,j);
  23. if(right>i) quicksort(tab,i,right);
  24. }
  25.  
  26. int main()
  27. {
  28. int a[10]={6,1,1,3,4,5,3,2,3,2};
  29.  
  30. for (int i=0; i<10; i++)
  31. printf("%d.=%d \n",i,a[i]);
  32. cout << endl;
  33.  
  34. quicksort(a,0,10);
  35.  
  36. for (int i=0; i<10; i++)
  37. printf("%d.=%d \n",i,a[i]);
  38. cout << endl;
  39. return 0;
  40. }
  41.  
Success #stdin #stdout 0s 3296KB
stdin
Standard input is empty
stdout
0.=6 
1.=1 
2.=1 
3.=3 
4.=4 
5.=5 
6.=3 
7.=2 
8.=3 
9.=2 

0.=6 
1.=5 
2.=4 
3.=3 
4.=3 
5.=3 
6.=2 
7.=2 
8.=1 
9.=1