题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。
思路:使用快排
public void reOrderArray(int [] nums) {
int low = 0;
int high = nums.length -1;
while(low < high) {
while(low < high && nums[high]%2==0) high--;
while(low < high && nums[low]%2 == 1) low++;
if (low < high) {
int t = nums[low];
nums[low] = nums[high];
nums[high] = t;
}
}
return nums;
}