简单双指针
先排序、再分段,后插入,左指针每次走一步,右指针如果插入成功就走一步,否则不动。
例如1,3,3,4,5。分成13,345,然后1 看能否插入34之间,可以则看下一个,最后3,1,4,3,5.
public static int reorder (int[] prices) { Arrays.sort(prices); int left = 0, right = (prices.length - 1) / 2; int mid = right; int count = 0; while (left < mid && right+1 < prices.length) { if (prices[left] < prices[right] && prices[left] < prices[right + 1]) { count++; right++; } left++; } return count; }