劍指 Offer 21. 調整數組順序使奇數位於偶數前面(sort cmp)

題目:

輸入一個整數數組,實現一個函數來調整該數組中數字的順序,使得所有奇數位於數組的前半部分,所有偶數位於數組的後半部分。

示例:

輸入:nums = [1,2,3,4]
輸出:[1,3,2,4] 
注:[3,1,2,4] 也是正確的答案之一。

提示:

1 <= nums.length <= 50000
1 <= nums[i] <= 10000


題解:

這道題考的,好吧我偷懶了。
cmp的精髓就是返回1就是a和b順序不變,返回0就是要調換順序。

class Solution {
public:
    
    static bool cmp(const int & a,const int & b)
    {
        return (a&1) > (b&1);
    }
    vector<int> exchange(vector<int>& nums) {
        sort(nums.begin(),nums.end(),cmp);
        return nums;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章