Advertisement
Guest User

Untitled

a guest
Jan 21st, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. void sort_s(int lewy, int prawy, int tab[])
  2. {
  3. int i, j, temp, w;
  4. i = lewy; // 0
  5. j = prawy; // 99
  6. w = tab[(lewy + prawy) / 2];// w = tab[49] - wartość środkowej liczby
  7. do {
  8. while (tab[i]<w) i++; // i = pierwsza liczba w tablicy większa od w
  9. while (tab[j]>w) j--; // j = pierwsza liczba w tablicy mniejsza od w
  10. if (i <= j) // true - zamienia i z j
  11. {
  12. temp = tab[i];
  13. tab[i] = tab[j];
  14. tab[j] = temp;
  15. i++;
  16. j--;
  17. }
  18. } while (i <= j); //wykonuje do momentu w którym i jest większe od j, czyli gdy wszystkie liczby mniejsze od w będą po lewej, a wszystkie większe będą po prawej
  19.  
  20. if (j>lewy) sort_s(lewy, j, tab); //wykonuje funkcje w przedziale 0 do j tablicy tab (wszystkie liczby mniejsze od w)
  21. if (i<prawy) sort_s(i, prawy, tab); //wykonuje funkcje w przedziale i do 99 tablicy tab (wszystkie liczby większe od w)
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement