4

arc4random() %2在我的代码中使用。它在初始化时由 3 个类调用,这会快速连续发生。但是,大约 70% 以上的结果总是全 0 或全 1(两组 000 或 111 之间的分布似乎是平均的)。我本来预计 3 个类之间 1 和 0 的分布相当随机。这怎么解释?

4

2 回答 2

1

虽然我不能明确地说出这一点,但它似乎确实是一个种子“问题”。在几毫秒内多次调用 arc4random() 将对某些数字产生很大的偏差。acr4random_uniform 似乎解决了这个问题 - 似乎它以更“健壮”的方式播种

于 2013-08-28T03:15:38.837 回答
-1

用于acr4random_unform(3)避免模偏差

阅读这篇文章:- http://nshipster.com/random/

于 2013-08-19T06:21:14.163 回答