我试图弄清楚如何将一组用户中的一对用户呈现给应用程序的 current_user
,而不是让 current_user
看到相同的内容又是一对用户。从数学上来说,我理解这是一个n select 2
,其中n是用户数组的大小。但是,我不确定如何设置数据结构,以便它可以随机将所有对的组合呈现给current_user
。谢谢!
最佳答案
我将创建一个包含两个用户的 id 的类。
@interface userPair: NSObject
@property (nonatomic, assign) NSInteger user1id;
@property (nonatomic, assign) NSInteger user2id;
@end
我只需创建一个包含所有可能对的 NSMutableArray,然后运行这个很棒的洗牌方法:(取自 this answer )
- (void)shuffle
{
NSUInteger count = [self count];
for (NSUInteger i = 0; i < count; ++i) {
// Select a random element between i and end of array to swap with.
NSInteger nElements = count - i;
NSInteger n = (arc4random() % nElements) + i;
[self exchangeObjectAtIndex:i withObjectAtIndex:n];
}
}
关于ios - 随机显示一对用户,并且不再显示同一对用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18394152/