🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
![](http://www.rhinostudio.cn/files/course/2019/02-10/23110379e6b4998928.png) ## **Random Reduce** 根据Reduction指定的删除数量(Integer)随机进行删除,删除规则按照Seed端执行。分分钟做一个随机删减的表皮。 ![](http://www.rhinostudio.cn/files/course/2019/02-10/232038692988186311.png) 那么问题来了,这个Seed端,到底是什么意思,如何作用?这就得叨叨两句了。这个运算器叫随机删除,那么这个Seed端肯定就和随机有关了,那怎么个有关系法? 建议看之前先看一下差评君关于随机的讲解视频: https://www.bilibili.com/video/BV18p4y167BE?t=207 ![](https://img.kancloud.cn/f2/5c/f25c25f14075322dc8ac705557c99616_1108x817.png) 然后,我们先来做个尝试: ![](http://www.rhinostudio.cn/files/course/2019/02-28/232437540698829156.gif) 如上图,我任意的修改Seed,你可以看到被删除的数列也在不停的改变,但是,当我滑动了一波之后,重新把Seed的数值设置为150时,后面的结果一模一样。什么意思?就是说每个Seed值对应的随机方式都是一样的,也就是说这个运算器并不是真随机,是伪随机,伪随机什么意思?首先Seed只能是整数,如果你给定slider区间只有0-100,那就意味着你最多,只能得到一百个随机结果。 事实上,现实生活中,大部分所谓的随机,都是伪随机,比如我们最常见的一种随机,随机播放,你有遇过哪怕一次,一首歌连续听了两遍么?哪怕你的歌单只有十首歌,也不可能出现一首歌连续听两遍的情况,按理说这个概率绝对不是零。所以,这个随时就是伪随机。那么我们就大概知道了,其实伪随机,就是用确定性的算法计算出的均匀分布的数序列。 真随机和伪随机,最大的区别在于概率,伪随机,举个例子:一个班有50位同学抓阄抽奖,纸条总计50个,其中10个有有奖,40个没奖。可以确定,按理说每个人平均都有20%的中奖可能。一旦第一位同学没有抽到,那么剩下同学平均中奖的可能性就会从20%提高到20.40%,以此类推,如果前10位同学都没有中奖,那么剩下同学中奖概率将提高到平均25%。但是不管谁中谁没中,最后横竖只有20%的人中奖。这就是20%的中奖概率。再比如,大家经常遇到的游戏抽卡包,抽ssr,十抽如果不中,下次必中,之类的,都是伪随机,你以为真的是你运气好中的么?想多了,程序一开始就计算好了,你的一切的一切,都不过是安排好的表演,为了让你掏钱。 所以,其实伪随机,都是有规律的,你只要能掌握规律,你就可以战无不胜。比如: [赌场老千与老虎机的故事:伪随机数如何打败赌场](https://www.sohu.com/a/165164345_117959) 老师说的没错,学好数理化,走遍天下都不怕! 真随机,指的是几率,比如17%的几率,意味着你这次触发特殊事件是17%的可能性,下次也是,每一次都是。如果你这次失败,下次依然保持在17%的可能性。。同样使用上面抽奖的例子,这次把20%概率换成20%的几率,那么就成了这样了:50个同学,每人会得到一个装着50张纸条的盒子,其中有10张有奖,40张不中奖,每人可以抽10张纸条。那么这时候,大家抽奖就是个抽各的,互不影响。你抽中了不会导致别人中或者不中,这就是几率,意味着事件之间毫无联系,说不定50个人总计可以抽到1000张全部奖品,或者50人全部空手而回。虽然同样是20%的可能性,概率是所有事件相互影响,总体可能性保持在20%,而几率是所有事件相互独立,单次可能性保持在20%,但总体中奖分布则在0到100%之间浮动。 so~之后如果我们在建模的时候遇到明明使用了随机运算器,但是结果却呈现明显规律性的情况,就是这里的Seed作怪了。