討論串[問題] 從0-99999選出一千個不重覆的亂數?
共 9 篇文章
內容預覽:
不知道這樣夠不夠亂.... 取1000個範圍隨便的隨機數r1 r2 r3 ... r1000. 並將它們當做間隔. 取1個隨機數當做我們要的起點a1. 第1個我們要的數字加上第一個間隔. 就是我們要的第2個數字a2=a1+r1*1000/(r1+r2+r3+...+r1000). 第三個數字a3=a
(還有243個字)
內容預覽:
這個問題,有人提到每次隨機取一項的機率必須同等,所以在演算法上面拼命想.. 但回想許多真實系統,有存在這種機率不均的問題嗎?. 樂透彩球用機器取球,第一次吸出一顆, p(1/49), 第二顆 p(1/48|1/49),. 第三顆 p(1/47|1/48,1/49),. 單看每一顆球的選取範圍,的確是
(還有306個字)
內容預覽:
JDK 裡Collection API的程式碼:. public static void shuffle(List<?> list, Random rnd) {. int size = list.size();. if (size < SHUFFLE_THRESHOLD || list instan
(還有494個字)
內容預覽:
關於這個問題, 沒有完美的通解, 要看你的亂數值的範圍, 與你要產生的亂數個數來決定. 1.假如你的值的範圍不大, 比如說撲克牌洗牌, 或從 0~幾十萬的數值範圍(m)裡取(n)個. 不重複的亂數值, 最有效率的方法是陣列取值法, 虛擬碼如下. for(i in 0..m-1). e[i]=i;.
(還有602個字)