A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© louxunxi4745 中级黑马   /  2015-3-19 22:42  /  1872 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C),这个题的知识点是什么,帮我看看

7 个回复

倒序浏览
插入排序!
回复 使用道具 举报
首先要知道有序数组是什么,然后要知道个在指定索引位置插入元素的方法
回复 使用道具 举报
数组还有无须的么  下鸟我了
回复 使用道具 举报
插入排序,很简单的吧,
回复 使用道具 举报
这是视屏中54小节的数组的折半查找
回复 使用道具 举报
哪里来的入学测试题目啊!这个用个 compare 内置函数就搞定了
回复 使用道具 举报

#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
   
    @autoreleasepool
    {
        printf("请输入插入数组的整数:");
        
        int a;
        
        scanf("%d",&a);
        
        NSArray *array = @ [@1,@3,@5,@7,@9]; // 创建一个NSArray数组并且赋值
        
        NSNumber *num = [[NSNumber alloc] initWithInt:a]; // 将输入的一个整数包装成NSNumber类型
        
        NSArray *array1 = [array arrayByAddingObject:num]; //将该个NSNumber插入NSArray中,生成一个新的NSSarray
   
        // 再对array1调用sortedArrayUsingSelector排序方法:用到系统自带一个方法compare方法进行比较排序
        NSArray *array2 =  [array1 sortedArrayUsingSelector:@selector(compare:)];
        
        NSLog(@"%@",array2); // 输出排序好的array2
        
    }
    return 0;
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马