题解 | #调整数组顺序使奇数位于偶数前面(二)#
调整数组顺序使奇数位于偶数前面(二)
http://www.nowcoder.com/practice/0c1b486d987b4269b398fee374584fc8
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param array int整型vector
* @return int整型vector
*/
//双指针算法
vector<int> reOrderArrayTwo(vector<int>& array) {
// write code here
if(array.size()==0||array.size()==1){
return array;
}
int left=0,right=array.size()-1;
int index=0;
while(left<right&&index<array.size()){
if(array[index]%2==0){
if(index==right){
index++;
right--;
}
else{
int tmp=array[index];
array[index]=array[right];
array[right]=tmp;
right--;
}
}
else{
if(index==left){
index++;
left++;
}
else{
int tmp=array[index];
array[index]=array[left];
array[left++]=tmp;
}
}
}
return array;
}
};