function ArrangeEvenOdd(arr) {
let left = 0;
let right = arr.length - 1;
while (left < right) {
if ((arr[left] % 2) != 0) { // odd
while ((arr[right] % 2 == 1) && right > left) {
right--;
}
let tmp = arr[left];
arr[left++] = arr[right];
arr[right--] = tmp;
}
else { // even
left++;
}
}
}
const arr = [3, 4, 7, 2, 9, 4, 8, 5, 6];
ArrangeEvenOdd(arr);
console.log(arr);
/*
run:
[ 6, 4, 8, 2, 4, 9, 7, 5, 3 ]
*/