GKLinearCongruentialRandomSource

来源:互联网 发布:数控螺纹编程书 编辑:程序博客网 时间:2024/06/03 18:21

GKLinearCongruentialRandomSource

一个实现线性同余的随机数发生器,快速但是随机数少于默认的随机数发生器。

概括

重要

GameplayKit中提供的随机化服务适用于可靠地创建确定性的伪随机游戏机制,但不具备加密性。对于加密,混淆或密码使用,请使用描述“加密指南”的Security框架。

要使用此随机源生成基本随机值,请使用GKRandom协议中定义的方法。要生成具有特定范围和分布的随机值,请使用该随机源与GKRandomDistribution类或其子类之一。

当你创建此类的实例时,生成的随机源是独立的和确定性的,也就是说,一个实例生成的数字序列对任何其他实例生成的序列没有影响,并且该序列可以在必要时复制有关复制序列的详细信息,请参阅seed属性和initWithSeed: 初始化方法。

线性同余随机源使用Donald E. Knuth在“计算机编程艺术”第2卷:半数学算法(第3.2.1节)中描述的算法,其通用种子掩码值为0x5DEECE66D。因此,该随机源与该算法的其他实现兼容,包括Java中的java.util.Random类。 也就是说,如果您使用相同的种子值初始化GKLinearCongruentialRandomSource实例和兼容实现,则两者都生成相同的数字序列。

Topics

创建随机源(Creating a Random Source)

- init

从非确定性种子初始化随机源。

- initWithSeed:

使用指定的种子数据初始化一个随机源。

复制随机行为(Replicating Random Behavior)

seed

确定随机来源行为的种子数据。

关系

继承

GKRandomSource



原创粉丝点击