//给定一个数组,将所有的偶数搬移到奇数后面
//若将题意修改将所有可以被3整除的放后面...只需要对判断条件稍加修改,另写一个bool函数是一个不错的选择
#include<iostream>
using namespace std;
template <class T>
int change(T & arr)
{
int length = sizeof(arr) / sizeof(arr[0]);
int i = 0;
int j = length - 1;
while (i < j)
{
while ((i < j) && (arr[i] & 0x1))
{
i++;
}
while ((i < j) && !(arr[j] & 0x1))
{
j--;
}
int tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
return 0;
}
int main()
{
int arr[] = { 1, 3, 4, 5, 6, 7, 9, 10 };
change(arr);
for (auto i : arr)
cout << i << " ";
cout << endl;
system("pause");
return 0;
}