您的位置:首页 > 其它

调整数组顺序使奇数位于偶数前面

2015-11-14 11:50 393 查看
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

思路:类似于插入排序。

package practice;

public class test {
private static void reOrderArray(int[] arr) {

for (int i = 0; i < arr.length; i++) {
int a = arr[i];
if (arr[i] % 2 == 1) {
if (i > 0) {
int temp = arr[i];
for (int m = i; m >= 0; m--) {

if (arr[m - 1] % 2 == 0) {
arr[m] = arr[m - 1];
} else {
arr[m] = temp;
break;
}

}
if (arr[0] % 2 == 0) {
arr[0] = arr[i];
}

}

}

}

for (int i = 0; i < arr.length; i++) {

System.out.println(arr[i] + " ");
}

}
public static void main(String args[]){
int[] array = {1,4,4,5,9,8};
test test = new test();
test.reOrderArray(array);
}
}

public void reOrderArray(int [] array) {
for(int i = 0;i<array.length;i++){
for(int j = array.length-1;j>i;j--){
if(array[j-1]%2 == 0&&array[j]%2 == 1){
int temp = 0;
temp = array[j-1];
array[j-1] = array[j];
array[j] = temp;
}
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: