【发布时间】:2018-10-09 20:28:56
【问题描述】:
我遇到了一个奇怪的问题。也许有人可以指导我查阅相关文献。
所以,在 Python 中,我创建了这个方法,它附加随机整数来设置,直到出现重复值。当生成的整数对于特定的集合不是唯一的时,方法会刹车:
import random
def count_no_repeat(i,j):
random_set = set()
while True:
new_number = random.randint(i,j)
if new_number in random_set:
break
random_set.add(new_number)
return len(random_set) + 1
然后,我重复这个方法一千次来计算:需要多少步骤才能产生非之前的价值
stats = []
for _ in range(1000):
stats.append(count_no_repeat(1,n))
n - 整数生成器有上限。
所以,对于这个实验的中位数:
- 增长相对缓慢;
- 停留在图上的位置(对于 10000 次实验也是如此);
谁能提供帮助,并说,为什么会这样? 谢谢!
【问题讨论】:
-
好像是模拟生日攻击。
-
感谢嵌入 img 的
-
您的问题是为什么会发生这种情况?
-
您能否澄清您需要帮助的问题或主题?
-
这可能在Math 上问得更好,尽管你也可能会在那里得到一个“数学”的答案。
标签: python random statistics distribution