Sort Even and Odd Indices Independently
排序一个数组, 偶数index的数字递增, 奇数index的数字递减.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
class Solution { public int[] sortEvenOdd(int[] nums) { int n = nums.length; List<Integer> odd = new ArrayList<>(); List<Integer> even = new ArrayList<>(); for(int i = 0; i < nums.length; i++){ if(i % 2 == 0) even.add(nums[i]); else odd.add(nums[i]); } Collections.sort(even); Collections.sort(odd, Collections.reverseOrder()); int[] res = new int[n]; int j = 0; int k = 0; for(int i = 0; i < nums.length; i++){ if(i % 2 == 0) res[i] = even.get(j++); else res[i] = odd.get(k++); } return res; } } |