#include <iostream>
void swap(int* a, int* b)
{
if (a == b)
return;
*a = *a ^ *b;
*b = *a ^ *b;
*a = *a ^ *b;
};
void InsertionSort(int* a, int n)
{
int end = 1;
while (end <= n)
{
int idx = end;
while (idx > 0 && a[idx - 1] > a[idx])
{
swap(&a[idx - 1], &a[idx]);
--idx;
}
++end;
}
};
int main()
{
int a[10] = {34,23,22,11,4,5,9,33,34,53};
InsertionSort(a, 9);
for (int i = 0; i < 10; ++i)
{
std::cout << a[i] << " ";
}
return 0;
}