![cover image](https://wikiwandv2-19431.kxcdn.com/_next/image?url=https://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/Durstenfeld_shuffle.svg/640px-Durstenfeld_shuffle.svg.png&w=640&q=50)
Fisher–Yates shuffle
Algorithm for generating a random permutation of a finite set / From Wikipedia, the free encyclopedia
Dear Wikiwand AI, let's keep it short by simply answering these key questions:
Can you list the top facts and stats about Fisher–Yates shuffle?
Summarize this article for a 10 year old
The Fisher–Yates shuffle is an algorithm for shuffling a finite sequence. The algorithm takes a list of all the elements of the sequence, and continually determines the next element in the shuffled sequence by randomly drawing an element from the list until no elements remain.[1] The algorithm produces an unbiased permutation: every permutation is equally likely. The modern version of the algorithm takes time proportional to the number of items being shuffled and shuffles them in place.
![Thumb image](http://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/Durstenfeld_shuffle.svg/320px-Durstenfeld_shuffle.svg.png)
The Fisher–Yates shuffle is named after Ronald Fisher and Frank Yates, who first described it. It is also known as the Knuth shuffle after Donald Knuth.[2] A variant of the Fisher–Yates shuffle, known as Sattolo's algorithm, may be used to generate random cyclic permutations of length n instead of random permutations.