Yahoo 知識+ 將於 2021 年 5 月 4 日 (美國東岸時間) 停止服務,而 Yahoo 知識+ 網站現已轉為僅限瀏覽模式。其他 Yahoo 資產或服務,或你的 Yahoo 帳戶將不會有任何變更。你可以在此服務中心網頁進一步了解 Yahoo 知識+ 停止服務的事宜,以及了解如何下載你的資料。

阿平
Lv 5
阿平 發問於 科學數學 · 2 年前

機率法產生的亂數,每個亂數產生的機率相等嗎?

更新:

[心得] 亂數不重複的方法

https://www.ptt.cc/bbs/C_and_CPP/M.1265989028.A.7C...

for(int i = 0,got = 0 ; i < deckSize ; ++i) {

if( rand() % (deckSize-i) < (getSize-got) ) {

cards[got] = i + 1; ++got;

}

基本上就是判斷亂數有沒有在區間內,有在區間內就選這張牌並縮小區間,沒在區間內就縮小亂數範圍。

例如52張牌(亂數範圍)選5張(區間)

第1張牌要不要選

區間內:選這張且區間-1(變成4)

區間外:亂數範圍-1(變成51)

但這樣每張牌選中的機率相等嗎?

更新 2:

更正

第1張牌要不要選

區間內:選這張,亂數範圍-1(變成51)且區間-1(變成4)

區間外:亂數範圍-1(變成51)

1 個解答

評分
  • ?
    Lv 7
    2 年前
    最愛解答

    假設 N 張牌要抽取 n 張.

    此法是 N 張牌逐一決定是否納入樣本.

    (下面請按左下角意見圖示續看)

      

還有問題嗎?立即提問即可得到解答。