瀏覽單個文章
michelle_lai529
*停權中*
 

加入日期: Dec 2005
文章: 21
引用:
作者8:5
洗完牌後,會亂,但是不會亂得很均勻。

比如說,rnd_plus(49,49) 有可能產生的洗牌結果有 49! 種。
如果是樂透的話,我們會期望每一種發生的機率都是 1/49!。
但是洗牌的結果顯然不會 1/49!...

比如說,我們要依照這個演算法,洗完牌後,順序剛好完全倒置的機率?
因為程式總共取了 2*49 次的亂數,每個亂數有 1-49 種可能。
所以樣本空間是 49^98。

其中某 X 種樣本,洗完後會完全倒置,則剛好導置的機率是.. X / 49^98。
但不管 X 是多少, X / 49^98 都不會是 1/49!

同樣的,我們想算洗完牌後,1,2 剛好交換,其餘都不動的機率?
那會是 Y / 49^98,也不會是 1/49!。

--
如果對於上面的描述很難體會的話,跑 rnd_plus(3,3) 幾萬次,統計一下結果看看...

函數是很久以前寫的,經您的提醒,突然想起來了,原始的想法是:
隨機由1∼n張牌中抽一張,與n交換,然後往前推,1∼(n-1)抽,與(n-1)交換...但是卻會發生洗了牌,結果卻是沒洗的可能情況,後來改為隨機由1∼(n-1)張牌中抽一張,與n交換,強制每張牌一定都會交換到,雖然不合理,卻也避開了完全沒有洗的情況(雖然事實上有可能發生),然而用了這麼久,我都不曉得我是用哪種方式比較多,經由網兄提醒才想到,也順便提出來給其他網友作為參考
舊 2008-09-22, 01:36 AM #54
回應時引用此文章
michelle_lai529離線中