class Solution {
public void wiggleSort(int[] nums) {
int[] help = nums.clone(); //不能写成int[] help = nums,排序后两个数组都改变
Arrays.sort(help);
int N = nums.length;
//比如123456 逆序一定成立,即使遇到相同的数字
for (int i = 1; i < nums.length; i += 2) {//下标为奇数
nums[i] = help[--N]; //遍历完成后 x 6 x 5 x 4
}
for (int i = 0; i < nums.length; i += 2) {//下标为偶数的
nums[i] = help[--N]; //便利完成后 3 6 2 5 1 4
}
}
}
leetcode 【排序】逆序找到规律一定满足
最新推荐文章于 2024-11-05 21:58:11 发布