给定整型数组, 把所有的偶数放到数组前面, 把所有奇数放到数组后面。
思路:
- 定义两个指针,左指针指向最左边,右指针指向最右边。
- 左指针往右走,寻找第一个奇数,右指针往左走,寻找第一个偶数。
- 交换左右两个数。
- 左指针+1,右指针-1。
- 循环进行2-3-4步骤。
package day7_10_17;
import java.util.Arrays;
public class Home15 {
public static void main(String[] args) {
int[] array = {2,5,6,9,7,4};
aheadEvenNum(array);
System.out.println(Arrays.toString(array));
}
public static void aheadEvenNum(int[] array) {
int left = 0;
int right = array.length - 1;
while (left < right) {
while (left < right && array[left] % 2 == 0) {
left++;
}
while (left < right && array[right] % 2 != 0) {
right--;
}
int temp = array[left];
array[left] = array[right];
array[right] = temp;
}
}
}