<random>

std::minstd_rand

typedef linear_congruential_engine<uint_fast32_t, 48271, 0, 2147483647> minstd_rand;
最小标准minstd_rand生成器
一个简单的乘法同余伪随机数生成器(一种线性同余引擎)。

该生成器有一个状态值,在每次前进时会通过其转移算法进行修改,如下所示:x在以下代码片段中被修改
1
x = x * 48271 %

它是线性同余引擎的一个实例化,具有以下模板参数:
参数名称说明
a乘数48271素数乘数
c增量0
m模数2147483647 231-1

它通常被认为能生成比具有相同开销的minstd_rand0稍更随机的序列。

成员类型

以下别名是...的成员类型minstd_rand:

成员类型定义说明
result_typeuint_fast32_t生成的数字的类型。

成员函数

作为线性同余引擎类型,它具有以下成员函数:

非成员函数

作为线性同余引擎类型,以下运算符重载可以应用于它:

成员常量

成员常量定义说明
乘数48271每次推进时在转换算法中使用的乘数a)。
增量0增量c)。
模数2147483647转换算法中使用的模数m)。
default_seed1构造或播种时使用的默认种子

另见