public int[] evenOddSwap(int[] nums) {
List<Integer> oddIndex = new ArrayList<>();
List<Integer> evenIndex = new ArrayList<>();
for (int i = 0; i < nums.length; i++) {
if (nums[i] % 2 == 0) {
oddIndex.add(i);
} else {
evenIndex.add(i);
}
}
for (int i = 0; i < nums.length / 2; i++) {
int temp = nums[oddIndex.get(i)];
nums[oddIndex.get(i)] = nums[evenIndex.get(i)];
nums[evenIndex.get(i)] = temp;
}
return nums;
}