Skip to content

Instantly share code, notes, and snippets.

@magicznyleszek
Last active August 29, 2015 14:02
Show Gist options
  • Save magicznyleszek/9bbb7f75464fbbea87f0 to your computer and use it in GitHub Desktop.
Save magicznyleszek/9bbb7f75464fbbea87f0 to your computer and use it in GitHub Desktop.
Fisher-Yates shuffle algorithm
// Fisher-Yates shuffle algorithm: http://bost.ocks.org/mike/shuffle/
function shuffle(array) {
var m = array.length, t, i;
// while there remain elements to shuffle
while (m) {
// pick a remaining element
i = Math.floor(Math.random() * m--);
// and swap it with the current element
t = array[m];
array[m] = array[i];
array[i] = t;
}
return array;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment