标准rand()功能给我的数字不够大:我需要unsigned long long的.我们如何获得非常大的随机数?我尝试修改一个简单的哈希函数,但它太大了,运行时间太长,从不产生小于1e5的数字!!
我需要你的帮助,请给我一些建议.从编程珍珠我知道要生成随机30位整数,我们应该像这样写:
RAND_MAX*rand()+rand()
Run Code Online (Sandbox Code Playgroud)
但是,我可以做什么来产生不是30,而是64位随机整数呢?我认为这是非常低效的方法,如果我乘以两个30位整数然后再乘以4位整数,那么我应该使用什么样的方法?我现在使用popcount_1不同的64位方法,我想在随机整数上测试它(我也在测量每个完成任务所需的时间)
你如何创建一个产生1到2,500万随机数的函数?
我已经考虑过使用,rand()但我认为最大数量RAND_MAX是正确的= 32000(那里)?
有没有办法绕过这种方式,这种方式不会降低选择非常低数字的概率,也不会增加选择高/中数的概率?
编辑:@Jamey D的方法完全独立于Qt.