题目链接
https://leetcode-cn.com/problems/sort-array-by-parity/
解题思路
- 双指针
- 一个指针从0开始,一个从A.size()开始进行遍历;
- 每次遇到两个奇偶就交换
代码
class Solution {
public:
vector<int> sortArrayByParity(vector<int>& A) {
int p1=0,p2=0;
int i = 0 ;
while(i<A.size()){
if((A[i]&1)==1){
swap(A[p2],A[i]);
p2++;
}
else if(p2>=p1){
swap(A[p2],A[i]);
swap(A[p1],A[p2]);
p1++;
p2++;
}
i++;
}
return A;
}
};