分割一个整数数组,使得奇数在前偶数在后。
给定 [1, 2, 3, 4],返回 [1, 3, 2, 4]。
在原数组中完成,不使用额外空间。
class Solution { public: /* * @param nums: an array of integers * @return: nothing */ void partitionArray(vector<int> &nums) { // write your code here if(nums.size()<2) return; int less=-1; int more=nums.size(); int L=0; while(L<more) { if(nums[L]%2!=0) { swap(nums[L++],nums[++less]); }else { swap(nums[L],nums[--more]); } } } }; ############################################### class Solution: """ @param: nums: an array of integers @return: nothing """ def partitionArray(self, nums): # write your code here if len(nums)<2: return nums less=-1 more=len(nums) L=0 while L<more: if nums[L]%2!=0: t=nums[L] less+=1 nums[L]=nums[less] L+=1 nums[less]=t else: t=nums[L] more-=1 nums[L]=nums[more] nums[more]=t return nums