如何在 C++ 中获取随机函数的周期性



我想计算随机数重复阶段的模式

string a="abcd";
for(int i=0;i<10000;i++)
{
a=swap(a[i%4],a[rand()]%4)
cout<<a<<"n";
}    

我想计算阶段,字符串模式将相同

大多数随机数生成器的序列不会在连续调用 rand 时重复,并且可以通过随机性测试。 C++实现中使用的实际算法可能会有所不同,并且可以是下面列出的算法之一:

https://en.cppreference.com/w/cpp/numeric/random

每个都有自己的理论和实现。

例如,最常见的线性全等之一的生成,解释如下: https://en.wikipedia.org/wiki/Linear_congruential_generator

请务必注意,当使用相同的种子设定种子时,大多数C++随机数生成器将在应用程序的不同运行中生成相同的数字序列。

最新更新