给你一个没有排序的数组,请将原数组就地重新排列满足如下性质
nums[0] <= nums[1] >= nums[2] <= nums[3]…
遍历数组
奇数位元素若比前一个元素小 交换
偶数位元素若比前一个元素大 交换
public class Solution {
/*
* @param nums: A list of integers
* @return: nothing
*/
public void wiggleSort(int[] nums) {
if(nums == null || nums.length == 0)
return;
for(int i = 1; i < nums.length; i++){
if((i % 2 == 1 && nums[i] < nums[i-1]) || (i % 2 == 0 && nums[i] > nums[i - 1]))
swap(nums, i, i - 1);
}
}
public void swap(int[] nums, int i, int j) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}