Advertisement
Guest User

Untitled

a guest
Jan 29th, 2015
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. void quicksort(int tab[],int x,int y)
  6. {
  7. int i=x,j=y,temp=0;
  8. int piv=tab[(x+y)/2];
  9.  
  10. do{
  11. while(tab[i]<piv)
  12. i++;
  13.  
  14. while(tab[j]>piv)
  15. j--;
  16. if(i<=j){
  17. temp=tab[i];
  18. tab[i]=tab[y];
  19. tab[y]=temp;
  20. i++;
  21. j--;
  22. }
  23.  
  24.  
  25. }while(i <= j);
  26.  
  27. if(x<j) quicksort(tab, x, j);
  28. if(y>i) quicksort(tab, i, y);
  29.  
  30. }
  31. int main()
  32. {
  33. int i,j;
  34. int *tab;
  35.  
  36.  
  37. printf("Ile liczb chcesz sortowac: \n");
  38. scanf("%i",&j);
  39. tab = (int *)malloc(j * sizeof(int*));
  40. printf("Podaj swoje liczby: ");
  41. for(i=0;i<j;i++){
  42.  
  43. scanf("%i",&tab[j]);
  44.  
  45. }
  46. printf("oto liczby przed sortowaniem: %i",&tab[j]);
  47. for(i=0;i<j;i++){
  48. printf("%i",&tab[j]);
  49. }
  50. quicksort(tab,0,j-1);
  51. printf("Po sortowaniu: %i",&tab[j]);
  52. for(i=0;i<j;i++){
  53. printf("%i",&tab[j]);
  54. }
  55. getchar();
  56. free(tab);
  57. getchar();
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement