iOS数组的去重

近来,项目中遇到了数组去重的需求,

自己想了下,创建另一个数组加判断条件来添加原数组的元素

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);





你可能感兴趣的:(iOS数组的去重)