A Simple In-Place Algorithm for In-Shuffle
  The paper presents a simple, linear time, in-place algorithm for performing a 2-way in-shuffle which can be used with little modification for certain other k-way shuffles. 
Peiyush Jain