天天看點

僞随機數的問題

C,C++,VB,C#中用的随機數都是僞随機數,僞随機數的一個問題就是取值分布不均勻。

比如抽獎,如果從100種随機抽取,如果1和100都是一等獎,但是1和100的出現機率完全不是1%,有可能比1%,也有可能比1%小.

也不知道各種資料庫中的随機數最終是否也是采用了僞随機數.

目前如果要分布均勻,一般都是用高斯随機數算法,是以各位玩抽獎的同學,如果要公平,還是不要用系統自帶的随機函數,需要另外自己寫.

如果是遊戲中色子,如果采用僞随機數的,而且随機種子相同的,那麼會出現在相同時間點上擷取的兩個随機值相同的問題.有些遊戲就是這麼被破解的.