调整数组顺序使奇数位于偶数前
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路
方法一:
创建一个新数组,遍历两次,第一次把奇数添加进去,第二次把偶数添加进去
public int[] reOrderArray (int[] array) {
// write code here
int arr[] = new int[array.length];
int count = 0;
for(int i=0;i<arr.length;i++){
if((array[i]&1)==1){
arr[count++] = array[i];
}
}
for(int i=0;i<arr.length;i++){
if((array[i]&1)==0){
arr[count++] = array[i];
}
}
return arr;
}
方法二
遍历,如果遇到奇数,判断其前面一个是否为奇数,是则遍历下一个,不是则向前移动至前一个为奇数