作者ogamenewbie (._.)
看板java
标题Re: [问题] 写一个乱数产生程式
时间Sat Dec 27 20:40:27 2008
※ 引述《eagle0401 (心机)》之铭言:
: 有件事 我一直好奇了非常的久
: 就是Random要怎麽写
: 在上课的时候 老师告诉我们
: java内建的Random不够乱
: 假如未来有需要用到乱数时
: 最好自己重新写一个比较安全
: 那究竟要怎麽样才有办法写一个乱数产生
: 我自己有想过 抓取CPU的时间取尾端的数字下去跑
: 但是这样应该也没办法用出一个比java内建的Random乱的Random函数
: 我记得我们老师是说要用布林函数来产生乱数
: 布林函数不是只有ture or false?? 我不是很懂要怎麽用...
: 爬版之後也只有看到 使用上的问题
: 有一个可能是写乱数的标题 也被删掉了
: 有人可以教教我吗?
乱数 其实我也不是很懂,
但是大体上来讲乱数要符合一个条件,
那就是要够乱,
而乱不乱的基准点我比较常听到的有 "不重覆的数列长度"
(我不太确定是不是这个名词)
举例来说,第一个数列依序产生的乱数序列为
___________
1 2 3 2 1 3 1 2 3 2 1 3
而第二个是
_____
2 1 3 2 1 3 2 1 3 2 1 3
我们就不会觉得第二个会比第一个乱。
那其他还有各种情况或需求
例如说乱数的分布率是平均分布还是常态的那种钟型曲线分布?...等等
理论的话,推文里面有人提到有不少篇论文会讨论乱数产生的方法,
想要看各种乱数变体或者是优秀的乱数产生法就是去找论文来研究思索。
实作的话,基本上 JDK API 的 source 都在哪边,
我想也没有比那个更有实作参考价值的教材了吧,
可以先去参考一下。
--
应该不会有哪个老师的作业是乱数产生器吧
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.160.33.177
1F:推 neversay:乱数产生除了乱度以外,效率也是很重要的...... 12/27 21:49
2F:推 nanie:我们老师有出过要我们写乱数程式 .. 不过不算成绩 只是体验 01/01 19:21