iOS递归的简单使用

递归是编程语言中一种较为常见的算法,递归的优点是使代码结构层次更清晰使程序更简洁。
举个栗子,大家就明白了,
把一个多维数组里的值打印出来:
NSArray *testArray = @[@"2",@3,@[@"re",@"fd"],@[@"rr",@"ll",@[@[@8,@"fd"],@"jj"]]];
废话不多说,直接上代码:

#pragma mark -- 递归
-(NSMutableArray *)outputArray:(NSArray *)mutArray
{
    for (int i = 0;i< mutArray.count ; i++) {
        if ([mutArray[i] isKindOfClass:[NSArray class]]) {
            [self outputArray:mutArray[i]];
        }else{
            [_tmpArray addObject:mutArray[i]];
        }
    }
    return _tmpArray;
}

直接打印就行:

    NSMutableArray *resultArray = [self outputArray:testArray];
    NSLog(@"%@",resultArray);
iOS递归的简单使用_第1张图片
代码截图

你可能感兴趣的:(iOS递归的简单使用)