题目描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路:将奇数放进一个数组,将偶数放进另一个数组,然后将两个数组合并,放进array中即可。
1 public void reOrderArray(int [] array) { 2 ArrayList<Integer> odd=new ArrayList<>(); 3 ArrayList<Integer> even=new ArrayList<>(); 4 for(int i=0;i<array.length;i++) { 5 if(array[i]%2==0) 6 even.add(array[i]); 7 else 8 odd.add(array[i]); 9 } 10 odd.addAll(even); 11 for(int i=0;i<array.length;i++){ 12 array[i]=odd.get(i); 13 } 14 }