討論串[問題] 從0-99999選出一千個不重覆的亂數?
共 9 篇文章
內容預覽:
以實際上來看的話機率的確是不一樣,假設是樂透49選6好了. 法一:產生亂數索引,依索引取出,取出的抽走或互換. 每個數的機率:. 取第1個時機率是1/49. 取第2個時機率是1/48. 取第3個時機率是1/47. .... 法二:先產生亂數,再檢查有無重覆,決定要不要取. 每個數的機率:. 取第1個
(還有249個字)
內容預覽:
唔 我得說演算法寫的不好的話. 洗牌法也會有機率不等的問題. 回頭檢查的缺點並不是機率不等. 而是在於愈後面的數字產生所需的期望亂數個數會變多 以及檢查的比較時間. 以這個問題來說 0~99999 取 1000 個數. 平均得產生 1053.5 個亂數 以及約 50 萬個比較 效率上是個很大的問題.
(還有481個字)