我想在C中创建一个函数。它将返回一个范围为N的随机整数,如下所示: - rand()%N; 但事情是我想跟踪唯一性。我不希望数字重复。但我也可以通过创建一个数组并将其中生成的整数复制来做到这一点。如: - array[count] = rand() % N;
并每次检查生成的数字是否已经在其中。 (只需在数组[]中搜索它);这是一个简单的方法,但是一个正确的方法。它会采取许多如果和为了;为此工作。 这是我能想到的最好的。生成非重复的随机数
的事情是,我想这个问题的最佳/优化的解决方案。什么将是最有效的方式来做到这一点?
允许明确一些事情: - 我想从一个NSArray中,始终是唯一坐落在一个UILabel一些文本。我的NSArray从Plist获取数据,而我的Plist有超过1000个条目。如果我想这样做很多次,它会影响性能,所以我想要一些有效的方式来做到这一点。
如果它保证没有重复不再是随机的,是不是逻辑? – 2011-12-18 19:47:18
同一句子中的“随机”和“唯一”不属于。你试图解决的问题究竟是什么? – Jon 2011-12-18 19:47:27
可以说我想填充一个数组,直到100的随机数,或另一个iPhone开发的例子是,我从1000个对象的NSArray标签中显示随机对象。 – SAQIBZAFAR 2011-12-18 19:50:59