题解 | #调整数组顺序使奇数位于偶数前面(二)#

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

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;
    }
};

其中判断数的奇偶可以用位运算,交换两个数字的值也可以用位运算,这里没写的复杂,感兴趣可以自己搜一搜相关资料。

全部评论

相关推荐

点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
01-09 14:09
华为 2012 算子开发 (20+5)*14-16 硕士211
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务