algorithm - 随机数生成器,为每个种子产生相同的顺序,最大值不高于循环长度,索引或值没有紧密形式
问题描述
完整的问题:是否有一个(伪)随机数生成器为每个种子产生相同的值顺序,最大值不(很多)高于循环长度并且没有接近的形式来获得第 i 个值或值的索引?
更多细节:
- 循环长度是元素的数量,直到它再次开始
- 该周期的所有数字不应比周期长度本身高很多。假设<100次。
- 普通计算机无法存储所有周期数
- 随机数方程不应允许在种子之后产生第 n 个值或确定给定值的索引。唯一的计算方式应该是迭代方式。即使您知道源代码和运行时变量
- 所有种子产生一个长度相同的循环。每个都应该具有相同的随机值顺序。例如 [1 4 2 3 5 ...] 如果种子是 1 并且 [2 3 5 ...] 是种子是 2(种子不需要等于第一个随机值)。可选而不是一个,它们产生少量不同的循环。假设 <100。
你知道任何可以做到这一点的随机生成器/算法吗?(不需要是完美的随机值)
解决方案
推荐阅读
- c++ - 这个递归函数每次迭代的值存储在哪里?
- c++ - 比较 2 个向量并从第 2 个向量中删除第 1 个中未找到的元素 - c++
- c# - System.Text.Json.JsonException:无法转换 JSON 值
- javascript - 如何在 ReactJS 中遍历数据并在 JSX 中显示它们?
- excel - excel vba vlookup 如果为真则消息框
- php - 每个参数调用一次 PHPUnit 测试方法
- python - 如何从重复值表示重叠的数据中计算现象的共现
- javascript - 如何检查两个日期之间的时间是否超过一定的月数?
- sorting - 如何按对象名称对 DDL 进行排序
- excel - 如何从关闭的 Excel 文件中恢复 Excel VBA 模块