Random Number
The code to use the nextInt() method to generate an integer within a range is:
public static int generateRandomIntIntRange(int min, int max) {
Random r = new Random();
return r.nextInt((max - min) + 1) + min;
}Shuffle
Shuffle cards
public void shuffle(int[] cards) {
Random r = new Random();
int len = cards.length;
//swap random card from card[0,...51] with card[51], then
//swap random card from card[0,...50] with card[50], then
for(int i=len; i>=1; i--) {
int rand = r.nextInt(52); //generate random num in [0,...,51]
swap(card,rand,i);
}
}Randomly select k number from an array
Reservoir Sampling
Extend: Randomly select k numbers
Last updated