 The algorithm operates by splitting either or , whichever is larger, into (nearly) equal halves.It then splits the other array into a part with values smaller than the midpoint of the first, and a part with larger or equal values.