关于产生随机整数的问题
在miller rabin算法中要求使用随机的整数基做测试,也就是在2到n-2之间产生随机的整数,那么
如何才能产生比较均匀分布的整数呢?
而且还要求不容易重复
hugecalc中是如何实现这一点的呢?
在pari中又是如何实现这一点的呢?
当然也可以在这里讨论一下产生随机数的产生算法问题
不知道谁能说一下 可以这么做:
1、取出N的bit数b0;
2、在2~b0-1中产生随机数b1;
3、生成bit数为b1的随机大数N1;
4、现有集合中bit数为b1的大数与N1比较,如无重复,则N1存入集合(否则丢弃);
5、当集合元素达到预定数目时停止。
其实关于随机数生成的问题比较高深,
要同时满足多项检验指标是非常困难的,
只要是对研究问题不产生严重缺陷即可。 就实际效果来说
基选择的方法并没有很好的理论 随机有两种含义,一种是只需要服从一种分布.
另外一种意思是没有任何要求.
这里应该指第二种
页:
[1]