近来,项目中遇到了数组去重的需求,
自己想了下,创建另一个数组加判断条件来添加原数组的元素
NSArray *arr = @[@"1",@"2",@"1",@"3",@"1",@"2",@"3",@"2"];
NSMutableArray *tempArr = [NSMutableArrayarray];
for (NSInteger i =0; i < arr.count; i++) {
if (![tempArrcontainsObject:[arr objectAtIndex:i]]) {
[tempArr addObject:[arrobjectAtIndex:i]];
}
}
NSLog(@"%@",tempArr);
但是上面那种方法的时间复杂度是 :n^2 .
下面这个方法:
NSArray *arr = @[@"1",@"2",@"1",@"3",@"1",@"2",@"3",@"2"];
NSOrderedSet *set = [[NSOrderedSetalloc] initWithArray:arr];
NSArray *resultArr = set.array;
NSLog(@"%@",resultArr);