https://www.geeksforgeeks.org/interleave-first-half-queue-second-half/