我不确定这个理论上是否可能;但如果可以,我想知道如何在Python中实现。我想要以低成本生成大型随机排列。例如,假设我想要在
range(10**9)
上进行一个排列。我希望该排列是均匀的(即我希望数字分散在各处,没有任何明显的结构)。我希望有一个函数可用于获取每个n
处的排列项,并且我希望有另一个函数可用于获取排列中每个数字的索引。最终的重要条件是:我希望在不必存储所有排列项的情况下完成所有操作。(这可能需要大量空间。)我希望每个项都可以访问,但我不希望像Python 3中的range
那样存储所有项。是否可能?
range(10**9)
中的一些(唯一的?)数字... - user395760