Wiggle sort array

Write codeMedium30 min

Your task

Given an integer array nums, reorder it in place so that nums[0] < nums[1] > nums[2] < nums[3] ... (strict alternation). It is guaranteed a valid arrangement exists. Return the reordered array. A correct, simpler-to-reason approach: sort a copy, then fill the odd indices from the largest values downward and the even indices from the remaining values downward (interleaving the two halves so equal medians never sit adjacent). Length up to 5*10^4.

Examples

wiggle_sort(nums: list[int]) -> list[int]
Example 1
Inputwiggle_sort([1, 5, 1, 1, 6, 4])
Output[1, 6, 1, 5, 1, 4]