黑马程序员技术交流社区

标题: 数组面试题及答案分享 [打印本页]

作者: songzengyu    时间: 2016-2-21 13:30
标题: 数组面试题及答案分享
现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C)

int main(int argc, const char * argv[]) {
    NSMutableArray *array = [NSMutableArray arrayWithArray:@[@1,@3,@5,@7,@9]];
    @autoreleasepool {
      
        NSUInteger count = array.count;
        NSLog(@"请输入一个整数");
        int input;
        scanf("%d",&input);
        
        NSNumber *inputNumber = [NSNumber numberWithInt:input];
        
        for (int i =0; i<count; i++) {
            if ([inputNumber compare:array[i]]<=0) {
               
                [array insertObject:inputNumber atIndex:i];// 比较输入的数和array的每一个数,当inputnumber小或者等于的时候,就插入到数组中和它比较的那个数前面.然后跳出循环.
                break;
            }
            
        }
        if (array.count == count) {
            [array addObject:inputNumber];//如果直到最后一个还没有找到小于inputnumber的数,就将inputnumber插入到数组最后
        }
        
        NSLog(@"%@",array);  // 输出数组.
    }
    return 0;
    }


作者: ios_Beginner    时间: 2016-2-21 21:17
谢谢,分享,很不错




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2