Advertisement
Adik28

Sortowanie szybkie (Quick Sort)

Nov 24th, 2013
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.92 KB | None | 0 0
  1.  private void QuickSort(int[] tab, int lewa, int prawa)
  2.         {
  3.             if (tab == null)
  4.             {
  5.                 return;
  6.             }
  7.  
  8.             int i = lewa;
  9.             int j = prawa;
  10.             int podzial = tab[(lewa + prawa) / 2];
  11.  
  12.             while (i <=j)
  13.             {
  14.                 while (tab[i] < podzial)
  15.                 {
  16.                     i++;
  17.                 }
  18.  
  19.                 while (tab[j] > podzial)
  20.                 {
  21.                     j--;
  22.                 }
  23.  
  24.                 if (i <= j)
  25.                 {
  26.                     int tmp = tab[i];
  27.                     tab[i++] = tab[j];
  28.                     tab[j--] = tmp;
  29.  
  30.                 }
  31.             }
  32.  
  33.             if (j > 0)
  34.             {
  35.                 QuickSort(tab, lewa, j);
  36.             }
  37.  
  38.             if (i<prawa)
  39.             {
  40.                 QuickSort(tab, i, prawa);
  41.             }
  42.         }
  43.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement