解题思路
我以为我用了双指针,结果实际上还是遍历法
C++代码
class Solution {
public:
vector<int> sortArrayByParityII(vector<int>& A) {
int n = A.size();
vector<int> ans(n);
int p = 0, q = 1; //分别对应奇偶指针
for (int i = 0; i < n; i++) {
if (A[i] % 2 == 0) {
ans[p] = A[i];
p += 2;
}
else {
ans[q] = A[i];
q += 2;
}
}
return ans;
}
};