import time

class Util(object):

def __init__(self):

self.index = 624

self.MT = [0] * 624

def inter(self,t):

return (0xFFFFFFFF & t) # 取最后32位->t

def twister(self):

for i in range(self.index):

y = self.inter((self.MT[i] & 0x80000000) + (self.MT[(i + 1) % self.index] & 0x7fffffff))

self.MT[i] = self.MT[(i + 397) % self.index] ^ y >> 1

if y % 2 != 0:

self.MT[i] = self.MT[i] ^ 0x9908b0df

self.index = 0

def exnum(self):

if self.index >= 624:

self.twister()

y = self.MT[self.index]

y = y ^ y >> 11

y = y ^ y << 7 & 2636928640

y = y ^ y << 15 & 4022730752

y = y ^ y >> 18

self.index = self.index + 1

return self.inter(y)

def mainset(self,seed):

self.MT[0] = seed # seed

for i in range(1, self.index):

self.MT[i] = self.inter(1812433253 * (self.MT[i - 1] ^ self.MT[i - 1] >> 30) + i)

return self.exnum()

def randomint(self,min_num,max_num):

try:

so = float(self.mainset(int(time.time()))) / (2 ** 32 - 1)

rd = min_num + int((max_num - min_num) * so)

return rd

except Exception as ex:

print "randomint function excute exception:" + str(ex)

随机算法python_梅森算法生成随机数的Python实现相关推荐

  1. js版梅森旋转生成随机数

    用js实现, 梅森旋转生成随机数, 来代替Math.random(); 该文章参考自 梅森旋转算法--伪随机数(加密.身份信息ID号)_Touch_Dream的博客-CSDN博客 <!DOCTY ...

  2. 用于生成随机数的python标准库模块是_17 Python 标准库之 random 模块 - Python 进阶应用教程...

    Python 标准库之 random 模块 随机数是随机产生的数,比如购买彩票,中奖的号码就是随机的.random 库是用于生成随机数的 Python 标准库,random 库提供如下函数: 函数 功 ...

  3. 用于生成随机数的python标准库模块是_详解Python基础random模块随机数的生成

    详解Python基础random模块随机数的生成 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  详解Python基础random模块随机数的生成.txt ] ( ...

  4. 人工鱼群算法python代码_人工鱼群算法python_鱼群算法 - Brillou的个人空间 - OSCHINA - 中文开源技术交流社区......

    本算法是参照李晓磊博士的论文实现的,详细的算法原理可阅读<一种新型的智能优化方法_人工鱼群算法_李晓磊> 算法基于鱼群的生存行为:在一片水域中,鱼存在的数目最多的地方就是本水域中富含营养物 ...

  5. 人工鱼群算法python_鱼群算法 - Brillou的个人空间 - OSCHINA - 中文开源技术交流社区...

    本算法是参照李晓磊博士的论文实现的,详细的算法原理可阅读<一种新型的智能优化方法_人工鱼群算法_李晓磊> 算法基于鱼群的生存行为:在一片水域中,鱼存在的数目最多的地方就是本水域中富含营养物 ...

  6. k近邻回归算法python_经典算法之K近邻(回归部分)

    1.算法原理 1.分类和回归 分类模型和回归模型本质一样,分类模型是将回归模型的输出离散化. 一般来说,回归问题通常是用来预测一个值,如预测房价.未来的天气情况等等,例如一个产品的实际价格为500元, ...

  7. C语言生成n个随机坐标,c语言如何生成随机数 怎样用c语言生成n个随机数?

    C语言中如何产生很大的随机数?这个可以一个一个的来生成啊,每次生成一个0-9之前的随机数,然后生成几次 组合起来就可以了. C语言 如何连续产生随机数? 如果我想用C在1s的时间内连续产生多个随机数, ...

  8. 汉诺塔算法python_经典算法:汉诺塔

    学编程,学IT,算法也是必不可缺的,这一次给大家带来一个经典的递归算法题,汉诺塔.算是算法的入门小题目之一吧~ 视频教程 什么是汉诺塔? 我这里直接拉来一个图解释一下(挂了请联系我) 就是这么一个东西 ...

  9. [转载] 令牌桶算法和漏桶算法python_排序算法(七):Bucket Sort 桶排序

    参考链接: 用Python进行存储桶Bucket Sort排序 Couting Sort 计数排序虽然快,但其只能对整数进行排序有一点的局限性.而 Bucket Sort 桶排序则没有这个限制.这里我 ...

最新文章

  1. 如何快速学习Java?
  2. 物联网时代传感器厂商竞争格局揭秘
  3. mysql被格式化恢复数据_三种常见数据库文件恢复方法介绍
  4. 算法设计与分析(第四周)大整数相乘 分治法【不能解决溢出问题】
  5. 小程序 mathjs渲染公式_Mac 3D渲染和动画制作----KeyShot 9 Pro
  6. linux下svn常用指令(转)
  7. 平安性格测试题及答案_性格趣味小测试题 有趣的心理测试题大全及答案
  8. 新浪API, 利用get_uid获取是uid的数据溢出问题解决方案
  9. Bug: tf.contrib.checkpoint.NoDependency object
  10. php 图片 变灰色,php[图片变灰]生成灰色图片代码
  11. 分析:G20相争 IMF得利
  12. 01、锁相环基本工作原理
  13. 利用scrapy爬取东方资讯的新闻
  14. 单片机中断系统应用实例(两组实验+Proteus仿真+C源程序)
  15. python中numpy函数ftt_语音MFCC提取:librosa python_speech_feature(2019.12)
  16. MQTT树莓派小车局域网控制移动
  17. 单链表的头尾插法详解
  18. X猫免费小说安卓逆向分析
  19. 【Python自动化测试8】流程控制语句讲解
  20. ubuntu16.04安装intel集显驱动过程问题总结

热门文章

  1. 【Matlab 控制】仿真多智体一致性分析,附代码
  2. 3.3 目标检测-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
  3. 安装Sublime Text 支持Go插件
  4. 超强整理!PCB设计之电流与线宽的关系
  5. 对图像进行二维离散Fourier变换
  6. NameError: global name ‘***‘ is not defined
  7. 换种方法学操作系统,轻松入门Linux内核
  8. 使用wireshark分析tcp/ip报文之报文头
  9. 【译文】AppBarLayout的越界滚动行为
  10. PHPMailer 发送邮件