A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 崔自成 中级黑马   /  2013-4-6 20:20  /  1906 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 崔自成 于 2013-4-7 20:35 编辑

java.util.Random 类的api文档介绍 “此类的实例用于生成伪随机数流”
我想知道什么叫伪随机数,还有真随机数么 ,怎么定义的?

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

9 个回复

倒序浏览
自我理解,这个Random生成的是底层一个计算算法算出来的数,如果你知道那个算法,逆向推算,就能推出它生成的数,那时候就不是随机数,真正的随机数是没有规律可循的.
如同那一个特殊的无限不循环小数一样.

评分

参与人数 1技术分 +1 收起 理由
张熙韬 + 1 赞一个!和我想的一样耶!

查看全部评分

回复 使用道具 举报
伪随机数,或称伪乱数,是使用一个确定性的算法计算出来的似乎是随机的数序,因此伪随机数实际上并不随机。
在计算伪随机数时假如使用的开始值不变的话,那么伪随机数的数序也不变。
伪随机数的随机性可以用它的统计特性来衡量,其主要特征是每个数出现的可能性和它出现时与数序中其它数的关系。
伪随机数的优点是它的计算比较简单,而且只使用少数数值很难推算出计算它的算法。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的,是不可见的。而计算机中的随机函数是按照一定算法模拟产生的,其结果是确定的,是可见的。我们可以这样认为这个可预见的结果其出现的概率是100%。所以用计算机随机函数所产生的“随机数”并不随机,是伪随机数。
随机数是由随机种子根据一定的计算方法计算出来的数值。所以,只要计算方法一定,随机种子一定,那么产生的随机数就不会变。
在相同的平台环境下,编译生成exe后,每次运行它,显示的随机数都是一样的。这是因为在相同的编译平台环境下,由随机种子生成随机数的计算方法都是一样的,再加上随机种子一样,所以产生的随机数就是一样的。

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
简单一句话:之所以叫伪随机数就是在一定条件下它是会重复的,并不能每次都能真正做到随机;而真正的随机数才是随机的,每次都不一样...{:soso_e197:}
回复 使用道具 举报
我在上海传智上课听老毕讲过,伪随机数就是通过某种算法来模拟一种数字的随机的产生。这种就是伪随机数,不是真正意义的随机数,是带有特定的算法。
回复 使用道具 举报
计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生成相对的随机数,即伪随机数。伪随机数并不是假随机数,这里的“伪”是有规律的意思,就是计算机产生的伪随机数既是随机的又是有规律的

评分

参与人数 1技术分 +1 收起 理由
黄玉昆 + 1

查看全部评分

回复 使用道具 举报
楼上各种总结 理解颇深~~~
回复 使用道具 举报
这个在黑马基础毕老师视频中出现过,当时老师是说是算法控制的随机功能。你可以看看基础视频大概在前半部分。
回复 使用道具 举报
如果问题未解决,请继续追问,如果没有问题了,请将帖子分类 改为“已解决”,谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马