功能需求
在App开发中生成随机数是一个很常见的操作,用Swift生成等概率随机数更是家常便饭的事,但假设我们要按从高到低(或相反)的非等概率随机生成0-n中的数字,又该如何做呢?
设P(x)为x生成的概率,则有P(x) > P(x+1) (或小于),那么看完本博内容,您将学到:
- 如何描述函数P(x)?
- 如何调整P(x)递增(或递减)的增量幅度?
- 如何使用P(x)生成0-n中的数字?
- 如何使用Swift中RandomNumberGenerator协议来实现满足P(x)的随机数发生器
如果你猜测的结果是使用正态分布函数,那么恭喜你,答对了!
下面就让我们来逐一完成它们吧。
还等什么,Let’s GO! 😉