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

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

http://www.nowcoder.com/practice/0c1b486d987b4269b398fee374584fc8

第七十九题
要么直接用1的代码 也都对的,要么像快拍一样 双指针 交换左右两边的位置
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param array int整型vector 
     * @return int整型vector
     */
    vector<int> reOrderArrayTwo(vector<int>& array) {
        // write code here
        int left = 0,right = array.size()-1;
        // 和快拍一样 左右指针交换
        // 找到左边第一个不是奇数,右边第一个不是偶数 两个交换
        // 循环结束条件 左边指针>=右边指针
        while(left < right){
            while(left < right && array[left]%2 == 1)
                left++;
            while(left < right && array[right]%2 == 0)
                right--;
            swap(array[left],array[right]);
        }
        return array;
    }
};

题解 文章被收录于专栏

一遍做剑指offer 一边保存做题步骤 并附带详细注释哦

全部评论

相关推荐

11-18 15:57
门头沟学院 Java
最终归宿是测开:这个重邮的大佬在重邮很有名的,他就喜欢打92的脸,越有人质疑他,他越觉得爽😂
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-21 19:05
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务