Shuffle Algorithm
What is the shuffle algorithm?
What does it look like?
public void shuffle(int[] array) {
// assume array not null and not empty
if (array.length <= 1) {
return;
}
for(int i = array.length; i >= 1; i--) {
int index = (int)(Math.random() * i);
swap(array, index, i -1);
}
}
private void swap(int[] array, int left, int right) {
int temp = array[left];
array[left] = array[right];
array[right] = temp;
}
Last updated