void Massiv ShakerSort int Mas Шейкерная сортировка int Left Right Lef

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
void Massiv::ShakerSort(int *Mas) // Шейкерная сортировка
{
int Left, Right, i;
Left=1;
Right=N-1;
while (Left<=Right)
{
for (i=Right; i>=Left; i--)
if (Mas[i-1]>Mas[i])
Swap(Mas, i, i-1);
Left++;
for (i=Left; i<=Right; i++)
if (Mas[i-1]>Mas[i])
Swap(Mas, i, i-1);
Right--;
}
}