随机数生成及控制
对于随机数,大家都知道,计算机不可能产生完全随机的数字,
所谓的随机数发生器都是通过一定的算法对事先选定的随机种子做
复杂的运算,用产生的结果来近似的模拟完全随机数,这种随机数被
称作伪随机数。伪随机数是以相同的概率从一组有限的数字中选取
的。所选数字并不具有完全的随机性,但是从实用的角度而言,其随
机程度已足够了。伪随机数的选择是从随机种子开始的,所以为了保
证每次得到的伪随机数都足够地“随机”,随机种子的选择就显得非
常重要。如果随机种子一样,那么同一个随机数发生器产生的随机数
也会一样。一般地,我们使用同系统时间有关的参数作为随机种子,
这也是.net 中的随机数发生器默认采用的方法。
我们可以使用两种方式初始化一个随机数发生器:
第一种方法不指定随机种子,系统自动选取当前时间作为随机种子:
Random ro = new Random();
第二种方法可以指定一个 int 型参数作为随机种子:
int iSeed=10;
Random ro = new Random(10);