调整数组顺序使奇数位于偶数前面【相对为止不变】

类似于插入法。
class Solution {
public:
    void reOrderArray(vector &array) {
        if(array.empty())
            return;
        int size = array.size();
        int odd = 0;
        for(int i = 0;i < size;++i){
            if((array[i] & 0x01) == 0)
                continue;
            if((array[i] & 0x01) == 1){
                if(i == odd){
                    ++odd;
                }else{
                    int tmp = array[i];
                    for(int j = i;j > odd;--j)
                        array[j] = array[j-1];
                    array[odd++] = tmp;
                }      
            }
            
        }
    }
};

你可能感兴趣的:(LeetCode)