题目链接:https://leetcode-cn.com/problems/sort-array-by-parity/description/
题目描述:
给定一个非负整数数组 A
,返回一个由 A
的所有偶数元素组成的数组,后面跟 A
的所有奇数元素。
你可以返回满足此条件的任何数组作为答案。
示例:
输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。
提示:
1 <= A.length <= 5000
0 <= A[i] <= 5000
public int[] sortArrayByParity(int[] A) {
ArrayList<Integer> oushu = new ArrayList<>();
ArrayList<Integer> jishu = new ArrayList<>();
for(int i:A){
if(i%2==0){
oushu.add(i);
}
else
{
jishu.add(i);
}
}
oushu.addAll(jishu);
int[] result = new int[oushu.size()];
for(int i=0;i<oushu.size();i++){
result[i] = oushu.get(i);
}
return result;
}
思考总结:
1、Arraylist<Integer>转化为int[]的时候用到了循环,感觉不太好
查找资料之后,发现如果是存储的String数据的时候,会好转化很多。
Arraylist<Integer>可以转化为Integer[] 但是题目要求的是int[].所以暂时用到了for循环
String[] array = (String[])list.toArray(new String[size]);
2、list的拼接方法为list.addAll();