生成有足够随机性的随机数

大致思路是使用足够的运算和网络传输产生随机性

1、循环若干次,做一组运算 因为即使同一台计算机 每次运行的时间也不会相同,求运算消耗的时间 因此产生了初步的随机性

2、重复步骤1 若干次 将得到的值乘上一个较大的数字 如10000 作为运算的循环次数 进一步放大随机性

3、多次重复步骤2 得到一些随机数,将步骤2得到的结果作为种子 随机出运算变量、运算符、循环次数,将运算结果和消耗时间相乘并迭代随机次数 得到 若干结果

4、连接类似于国家授时中心的地址获取一个时间记录后再次获取一个时间 可以获取一个基于网络状况的随机数

5、思路与2、3类似 进一步放大随机性

6、将步骤3和5产生的结果做运算 产生的结果可以做种子也可以直接做为结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纵马饮白虹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值