给你一个整数数组 nums
,将 nums
中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。
返回满足此条件的 任一数组 作为答案。
输入:nums = [3,1,2,4] 输出:[2,4,3,1] 解释:[4,2,3,1]、[2,4,1,3] 和 [4,2,1,3] 也会被视作正确答案。
思路:遍历数组并且弄两个指针记录位置 ,奇数从后往前放,偶数从前往后放
class Solution {
public int[] sortArrayByParity(int[] nums) {
int n=nums.length;
int []res=new int[n];
int j=0;
int k=nums.length-1;
for(int i=0;i<n;i++){
if(k<j){
break;
}
if(nums[i]%2==0){
res[j++]=nums[i];
}
else{
res[k--]=nums[i];
}
}
return res;
}
}