<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    LALA  
    日歷
    <2008年12月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    導(dǎo)航

    留言簿(1)

    隨筆分類(31)

    文章分類(4)

    收藏夾(21)

    搜索

    •  

    積分與排名

    • 積分 - 30055
    • 排名 - 1390

    最新隨筆

    最新評論

    閱讀排行榜

     
    比較好的生成隨機(jī)序列的算法:
     
     1 import java.util.Random;
     2 
     3 public class Utility {
     4     /**
     5      * 用0~n生成m個數(shù)的隨機(jī)序列
     6      * 
     7      * @param limit
     8      *            - n-1
     9      * @param need
    10      *            - m
    11      * @return 生成的隨機(jī)序列
    12      */
    13     public static int[] random_serial(int limit, int need) {
    14         int[] temp = new int[limit];
    15         int[] result = new int[need];
    16         for (int i = 0; i < limit; i++)
    17             temp[i] = i;
    18         int w;
    19         Random rand = new Random();
    20         for (int i = 0; i < need; i++) {
    21             w = rand.nextInt(limit - i) + i;
    22             int t = temp[i];
    23             temp[i] = temp[w];
    24             temp[w] = t;
    25             result[i] = temp[i];
    26         }
    27         return result;
    28     }
    29 
    30     /**
    31      * 對0~n進(jìn)行隨機(jī)亂序排列,比如用于歌曲隨機(jī)播放。
    32      *  1、按順序用0到n填滿整個數(shù)組;
    33      *  2、隨機(jī)產(chǎn)生從0到n-2個數(shù)組下標(biāo),把這個下標(biāo)的元素值跟n-1下標(biāo)的元素值交換,
    34      *     一直進(jìn)行到下標(biāo)為1的元素。
    35      * 因此它只需要遍歷一次就能產(chǎn)生全部的隨機(jī)數(shù)。
    36      * 
    37      * @param limit
    38      *            - n-1
    39      * @return 生成的隨機(jī)序列
    40      */
    41     public static int[] random_serial(int limit) {
    42         int[] result = new int[limit];
    43         for (int i = 0; i < limit; i++)
    44             result[i] = i;
    45         int w;
    46         Random rand = new Random();
    47         for (int i = limit - 1; i > 0; i--) {
    48             w = rand.nextInt(i);
    49             int t = result[i];
    50             result[i] = result[w];
    51             result[w] = t;
    52         }
    53         return result;
    54     }
    55 }
    56 
    posted on 2008-12-23 17:32 Dest 閱讀(1837) 評論(1)  編輯  收藏 所屬分類: Java算法
     
    Copyright © Dest Powered by: 博客園 模板提供:滬江博客
    主站蜘蛛池模板: 午夜亚洲福利在线老司机| 精品国产无限资源免费观看| 无码国产亚洲日韩国精品视频一区二区三区| 亚洲人xxx日本人18| 西西大胆无码视频免费| 亚洲人成在线免费观看| 最近中文字幕无吗免费高清| 中文字幕乱码亚洲无线三区| 国产美女精品视频免费观看| 国产亚洲福利精品一区二区| 亚洲日韩在线第一页| 在线看片免费人成视频久网下载| 亚洲精品无码成人片久久| 亚洲精品免费在线观看| 亚洲第一网站免费视频| 我想看一级毛片免费的| 特黄aa级毛片免费视频播放| 在线亚洲午夜理论AV大片| 免费成人在线视频观看| 亚洲成无码人在线观看| 日本免费v片一二三区| eeuss影院www天堂免费| 亚洲欧洲国产精品你懂的| 无码永久免费AV网站| 亚洲AV无码专区在线厂| 在线观看午夜亚洲一区| 16女性下面无遮挡免费| 亚洲另类无码专区丝袜| 国产日产亚洲系列最新| 四虎精品视频在线永久免费观看 | 久久久久一级精品亚洲国产成人综合AV区 | av电影在线免费看| 久久精品亚洲中文字幕无码麻豆| 国产成人免费高清激情视频| 美女裸体无遮挡免费视频网站| 在线日韩日本国产亚洲| 成年女人18级毛片毛片免费观看| ww在线观视频免费观看w| 亚洲视频国产视频| 无码不卡亚洲成?人片| 57pao国产成永久免费视频|