我知道在Matlab中,有一个叫做randperm的函数,它基本上会返回数字的随机排列。
例如,randperm(6)返回[3 2 6 4 1 5]。
iOS中有类似内容吗?
答案 0 :(得分:1)
这样做:
- (NSArray*) randperm: (int) total
{
NSMutableArray *array = [[NSMutableArray alloc] init];
int counter = 0;
while (counter < total) {
NSNumber *randomInteger = [NSNumber numberWithInt:(arc4random_uniform(total)+1)];
if (![array containsObject:randomInteger]) {
[array addObject:(randomInteger)];
counter++;
}
}
return array;
}