Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.47 KB | None | 0 0
  1. void bsortopt(int *tab, int n)
  2. {
  3.     int porownanie = 0, zamiana = 0;
  4.     int pmin = 0, pmax = n - 1, p;
  5.     do
  6.     {
  7.         p = -1;
  8.         for (int i = pmin; i < pmax; i++)
  9.         {
  10.             porownanie++;
  11.             if (tab[i] > tab[i + 1])
  12.             {
  13.                 zamiana++;
  14.                 swap(tab[i], tab[i + 1]);
  15.                 porownanie++;
  16.                 if (p < 0) pmin = i;
  17.                 p = i;
  18.             }
  19.         }
  20.         if (pmin) pmin--;
  21.         pmax = p;
  22.     } while (p >= 0);
  23.     cout << "Ilosc porownan: " << porownanie << endl << "Ilosc zamian: " << zamiana << endl;
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement