为什么是99%

By | 2014年9月7日

只要你用过鲁大师,360开机助手,或者类似的软件,就一定不会对下面的场景陌生。

没错,这类国产软件除了给出一个成绩之外,还会告诉你“击败了全国**%的电脑”。这里我们谈谈百分比计算的原则,一并解释为什么不存在100%的情况。

无论你的硬件多快,你会发现这里永远都不会出现“击败了全国100%人的电脑”。事实上,就算使用全球最快的计算机,也永远无法达到100%,这并不意味着总有人的电脑比你快,而是因为算法本身的问题。

首先让我们思考一个问题,全国所有电脑的性能分布会是一个什么图形?也许你会不假思索的说是金字塔形,底层最多,而越往上越少。其实这恰好是错的,我们多数时候认为的金字塔分布事实上是正态分布。

虽然术语听起来晦涩难懂,但一句话就可以概括:中间多两头少。

 

如图就是一个正态分布的例子,X轴表示的是得分,Y轴表示的是人数。由于跑分软件通常没有上限,X轴也是没有尽头的。当软件需要计算你超过了多少人的电脑时,只需计算一下左侧阴影部分的面积即可。如果大家学过微积分,一定还记得这么一回事。

由于正态分布函数曲线永远不会与X轴相交,在你的分数不等于无穷大之前,都只能越来越趋近于100%而无法达到。区别只是99%和99.99%或者更多的9。

使用正态分布计算还有另一个好处,在软件跑分数据库稳定之后,正态分布的函数曲线在一段时间内会保持稳定。这时只需要提前算好每个百分数区间对应的分数区间即可,而无需每次提交分数都重新计算。而如果使用绝对排名计算百分比,每一次提交成绩都需要检索整个数据库,对于服务器会造成不小的负担。

这就是为什么,你永远也无法超过100%人的电脑。

One thought on “为什么是99%

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

滑动到最右以进行验证 *