解题思路:
(1)创建一个与原数组同样大小的数组
(2)准备一个计数器cnt,作为偶数的下标(从0开始计数);同时准备另一个计数器j,作为奇数的下标(从数组最大索引开始)
(3)遍历原数组,如果是偶数,存到cnt指向的位置,同时cnt++;如果是奇数,存到j指向的位置,同时j--
class Solution {
public int[] sortArrayByParity(int[] A) {
int len=A.length;
int[] res=new int[len];
int cnt=0;
int j=len-1;
for(int i=0;i<len;++i){
//偶数
if(A[i]%2==0){
res[cnt++]=A[i];
}
else{
res[j--]=A[i];
}
}
return res;
}
}