Fisher–Yates Shuffle

Manuel Eberl 🌐

September 30, 2016


This work defines and proves the correctness of the Fisher–Yates algorithm for shuffling – i.e. producing a random permutation – of a list. The algorithm proceeds by traversing the list and in each step swapping the current element with a random element from the remaining list.

BSD License


Theories of Fisher_Yates