问题描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。
代码
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] s = scanner.nextLine().split(" ");
int[] arr = new int[s.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(s[i]);
}
System.out.println(Arrays.toString(exchange(arr)));
}
public static int[] exchange(int[] nums) {
int left = 0;
int right = nums.length - 1;
while (left < right) {
if (nums[left]%2 == 1) {
left++;
continue;
}
if (nums[right]%2 == 0) {
right--;
continue;
}
int temp = nums[right];
nums[right] = nums[left];
nums[left] = temp;
}
return nums;
}
}