【题目】
给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案
来源:leetcode
链接:https://leetcode-cn.com/problems/sort-array-by-parity/
【示例】
输入:[3,1,2,4]
输出:[2,4,3,1]
输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受
【代码】
class Solution {
public:
vector<int> sortArrayByParity(vector<int>& A) {
vector<int> rs;
for(auto x:A)
if(x%2==0)
rs.push_back(x);
for(auto x:A)
if(x%2)
rs.push_back(x);
return rs;
}
};
【双指针法】
class Solution {
public:
vector<int> sortArrayByParity(vector<int>& A) {
vector<int> rs(A.size());
int left=0,right=A.size()-1;
for(auto x:A)
if(x%2==0)
rs[left++]=x;
else
rs[right--]=x;
return rs;
}
};

本文提供了一种解决LeetCode上按奇偶排序数组问题的方法,通过示例展示如何将数组中的所有偶数元素置于奇数元素之前。提供了两种算法实现,包括遍历和双指针法。
654

被折叠的 条评论
为什么被折叠?



