Advertisement
Guest User

Untitled

a guest
Jun 24th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <time.h>
  4.  
  5. #define TAB_MAX 20
  6. #define RANDOM_MAX 10
  7.  
  8. void print(int T[])
  9. {
  10. int i;
  11. printf("\n[");
  12. for(i=0;i<TAB_MAX;i++)
  13. printf("%d ", T[i]);
  14. printf("]\n");
  15. }
  16.  
  17. void tab_random(int T[])
  18. {
  19. int i;
  20. for(i=0;i<TAB_MAX;i++)
  21. T[i] = rand() % RANDOM_MAX;
  22. }
  23.  
  24. void quicksort(int T[], int p, int r)
  25. {
  26. int q;
  27.  
  28. if(p<r)
  29. {
  30. q=partition(T,p,r);
  31. quicksort(T,p,q);
  32. quicksort(T,p+1,r);
  33. }
  34. }
  35.  
  36. int partition(int T[], int p, int r)
  37. {
  38. int tmp,x,i,j;
  39. x=T[p];
  40. i=p-1;
  41. j=r+1;
  42. while(i<j)
  43. {
  44. do
  45. {
  46. --j;
  47. }
  48. while (!(T[j]<=x));
  49. do
  50. {
  51. ++i;
  52. }
  53. while (!(T[i]>=x));
  54. if(i<j)
  55. {
  56. tmp=T[i];
  57. T[i]=T[j];
  58. T[j]=tmp;
  59. }
  60. }
  61. return j;
  62. }
  63.  
  64.  
  65.  
  66. int main()
  67. {
  68. int i, tab[TAB_MAX];
  69. srand(time(NULL));
  70. printf("Hello!\n\n");
  71. print(tab);
  72. tab_random(tab);
  73. print(tab);
  74. quicksort(tab,0,TAB_MAX-1);
  75. print(tab);
  76.  
  77. return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement