调整数组顺序-奇数在左偶数在右
思路: 使用归并排序类的方法
public class 奇数在左偶数在右 {
public static int[] helper;
public static void main(String[] args){
int arr[] = {1,2,3,5,6,3,7,8,9,4,6};
Util.print(arr);
sort(arr);
System.out.println();
Util.print(arr);
}
public static void sort(int arr[]){
helper = new int[arr.length];
sort(arr, 0, arr.length - 1);
}
public static void sort(int[] arr,int p,int r){
System.arraycopy(arr, p, helper, p, r - p + 1);
int left = p;
int right = r;
while(left<=right){
if(helper[p]%2==0){
arr[left++]=helper[p];
}else{
arr[right--]=helper[p];
}
p++;
}
}
}