题解 | #调整数组顺序使奇数位于偶数前面(二)#
调整数组顺序使奇数位于偶数前面(二)
https://www.nowcoder.com/practice/0c1b486d987b4269b398fee374584fc8
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param array int整型vector
* @return int整型vector
*/
vector<int> reOrderArrayTwo(vector<int>& array) {
int n=array.size();
int p=0,q=n-1;
while (p<q) {
while (array[p]%2!=0) {
p++;
}
while (array[q]%2!=1) {
q--;
}
if (p<q) {
int tmp=0;
tmp=array[p];
array[p]=array[q];
array[q]=tmp;
}
}
return array;
}
};
其中判断数的奇偶可以用位运算,交换两个数字的值也可以用位运算,这里没写的复杂,感兴趣可以自己搜一搜相关资料。
