Definition: Split a list of elements (or deck of cards) exactly in half then precisely interleave the two halves.
Generalization (I am a kind of ...)
See also ideal random shuffle.
For several years I defined "perfect shuffle" to mean an algorithm that randomly shuffles (permutes) elements with a uniform chance of getting any particular permutation. I now call that an "ideal random shuffle", after Oleg, since "perfect shuffle" has been far more widely used for decades to mean the above (see for instance, Donald E. Knuth, "The Art of Computer Programming", 2nd edition, Vol 3, Exercises for Sect. 5.3.4, number 13, page 237).
If you have suggestions, corrections, or comments, please get in touch with Paul E. Black.
Entry modified 9 January 2009.
HTML page formatted Fri Mar 25 16:20:34 2011.
Cite this as:
Paul E. Black, "perfect shuffle", in Dictionary of Algorithms and Data Structures [online], Paul E. Black, ed., U.S. National Institute of Standards and Technology. 9 January 2009. (accessed TODAY) Available from: http://www.nist.gov/dads/HTML/perfectShuffle.html