O(N/2) random swap hack