java開發手記

          常用鏈接

          統計

          最新評論

          2008年7月11日 #

          洗牌算法

           在我過去三年的職涯中,遇到過無數的問題,一直想記錄下來,但是一直耽擱著。從這篇洗牌算法開始,我會一點一點將我所記得的問題和解決辦法整理出來。

          固定數目的撲克牌,打完后洗牌,每次洗牌得到的順序都是不一樣的。

          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;

                 }

          posted @ 2008-07-11 12:40 米香兒 閱讀(1377) | 評論 (0)編輯 收藏

          僅列出標題  
          主站蜘蛛池模板: 永登县| 方山县| 新安县| 巫山县| 永丰县| 健康| 类乌齐县| 桃江县| 宣化县| 梧州市| 泾阳县| 浙江省| 清远市| 赤水市| 普格县| 罗江县| 汝阳县| 弥勒县| 内江市| 舒城县| 洞头县| 广宗县| 谢通门县| 临邑县| 和顺县| 喜德县| 鄂托克旗| 金昌市| 营口市| 乐昌市| 牙克石市| 襄城县| 堆龙德庆县| 华安县| 麦盖提县| 怀仁县| 吉隆县| 加查县| 读书| 启东市| 高邮市|