public class MyClass {
public static void ArrangeEvenOdd(int[] arr) {
int left = 0;
int right = arr.length - 1;
while (left < right) {
if ((arr[left] % 2) != 0) { // odd
while ((arr[right] % 2 == 1) && right > left) {
right--;
}
int tmp = arr[left];
arr[left++] = arr[right];
arr[right--] = tmp;
}
else { // even
left++;
}
}
}
public static void main(String args[]) {
int[] arr = {3, 4, 2, 9, 4, 8, 5, 6};
ArrangeEvenOdd(arr);
for (int n: arr) {
System.out.print(n + " ");
}
}
}
/*
run:
6 4 2 8 4 9 5 3
*/