在分析一个大型游戏程序后,我发现库函数 rand() 消耗了总处理时间的相当一部分。我对随机数生成器的要求不是很繁重 - 它通过大量纯随机性统计测试并不重要。我只想要一些便宜又开朗的东西,而且速度很快。有什么建议吗?
最佳答案
很少有比 LCG 更快的常用算法(这很可能是 rand()
正在使用的)。您可能想试试 Marsaglia 的 Xorshift速度非常快的生成器(取决于硬件)。 WELL512a发电机也相当快(比 MT19937 或 MT19937-64 快)。
关于廉价而令人愉快的 rand() 替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3052312/