Fisher-Yates shuffle

Etymology
Named after Ronald Fisher and Frank Yates.

Noun

 * 1)  A particular algorithm for generating an unbiased random permutation of a set. It selects elements randomly from the initial set until none remain.