您的位置:首页 > 其它

调整数组顺序使奇数位于偶数前面

2014-02-23 01:47 239 查看
#include "stdafx.h"
#include <iostream>
/*
题目:调整数组顺序使奇数位于偶数前面
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分.
*/
using namespace std;

void ReorderOddEvent(int *pData,unsigned int length)
{
int left = 0,right = length-1;
while(left<right)
{
while(pData[left]%2==1)
{
left++;
}
while(pData[right]%2==0)
{
right--;
}
if(left<right)
{
int temp = pData[left];
pData[left]=pData[right];
pData[right] = temp;
}
}
cout<<length<<endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
int nums[]={1,2,3,4,5,6,7,8,3,4,6};
int length = sizeof(nums)/sizeof(int);
ReorderOddEvent(nums,length);
for(int i = 0;i!=length;++i)
cout<<nums[i]<<" ";
return 0 ;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: