在我過去三年的職涯中,遇到過無數的問題,一直想記錄下來,但是一直耽擱著。從這篇洗牌算法開始,我會一點一點將我所記得的問題和解決辦法整理出來。
固定數目的撲克牌,打完后洗牌,每次洗牌得到的順序都是不一樣的。
22個編號的盒子,對應于22種給定的money,每次運行時讓盒子里存放隨機的money。這是剛畢業的頭半年,我剛開始學習java不久,領導讓我寫的一個游戲程序里的一個技術問題。后來我知道了,是網絡上的一個小游戲。只是給我的資料里不需要做游戲的界面,只要實現游戲的后臺,在控制臺輸入輸出就可以。
public int[] randoms() //產生22個隨機排列的value。
{
Random r = new Random();
int temp1,temp2;
int send[] = {1,10,50,100,500,1000,5000,10000,25000,50000,75000,100000,
300000,500000,1000000,1500000,2000000,3500000,5000000,
7500000,10000000,25000000};
int len = send.length;
int returnValue[] = new int[22];
for(int i=0;i<22;i++)
{
temp1 = Math.abs(r.nextInt())% len;
returnValue[i] = send[temp1];
temp2 = send[temp1];
send[temp1] = send[len-1];
send[len-1] = temp2;
len--;
}
return returnValue;
}