c - 一个很好的 C 随机数生成器

标签 c random

我需要一个好的随机数生成器,用于我用 C 语言编写的程序。如果您有兴趣,它是一个分形火焰生成器。我的图像非常粗糙,尽管我过去使用相同的算法取得了成功。我终于意识到,不同之处在于我使用的随机数生成器。令人难以置信的是,它产生了巨大的变化。我希望更好的随机数生成器可能会产生更好的结果。答案可能以代码示例或指向预先存在的随机数库的链接的形式出现。最重要的要求:

  • 它应该产生相对高质量的随机数流
  • 周期必须超过百亿
  • 它应该足够快并且提供良好的性能权衡。

最佳答案

这似乎是 Mersenne Twister 的一个很好的用例

  • 它比 rand() 的大多数标准实现更快
  • 它有很长的 (2^19937 − 1) 个周期
  • 它具有相当高的质量 - 它通过了大多数标准化的随机性测试
  • 这是公共(public)领域

关于c - 一个很好的 C 随机数生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14890813/

相关文章:

c - 如何在 C 中编写可以处理多个参数的函数声明?

java - java中的数组,带有随机数

python - 如何在 python 中生成每个像素都是随机颜色的图像

java - 在 Java 中将随机字符放置在数组板上

javascript - 在函数之间共享 Javascript 变量

c - C 中的 printf 错误

c - 使用 fwrite 和 fread 保存和检索示例 malloc 数据库

c - 具有字符串的结构中的 fscanf

c - 错误 `./px' : free(): invalid next size (normal)Aborted (core dumped)

Dart 中的 List.shuffle() ?