iosOC/C不可变数组排序

//1.回顾C数组排序

        int a[6] = {1,4,3,5,6,2};

        //选择

        for (int i =0; i<6-1; i++) {

            for (int j = i+1; j<6;j++) {

                if(a[i]>a[j]){

                    int tmp = a[i];

                    a[i] = a[j];

                    a[j] = tmp;

                }

            }

        }

        for(int i=0;i<6;i++){

            printf("a[%d] = %d\n",i,a[i]);

        }

      

    //NSArray 排序

        NSArray * array = @[@"1",@"4",@"5",@"7",@"2",@"9"];

     //当前放返回值是数组,这个排序是系统默认提供,遵从从小大 具有局限性 不方便扩展 不会经常使用

    [array sortedArrayUsingSelector:@selector(compare:)];

//    [array sortedArrayWithOptions:<#(NSSortOptions)#> usingComparator:<#^NSComparisonResult(id obj1, id obj2)cmptr#>]

//      [array sortedArrayUsingFunction:<#(NSInteger (*)(__strong id, __strong id, void *))#> context:<#(void *)#>]

       

        NSMutableArray * arr2 = [[NSMutableArray alloc]initWithArray:array];

        

        for (int i = 0; i<[arr2 count]-1; i++) {

            for (int j = i+1; j<[arr2 count]; j++) {

            if(([arr2[i] intValue])>([arr2[j] intValue])){

                NSString * str = arr2[i];

                arr2[i] = arr2[j];

                arr2[j] = str;

                }

            }

        }

        NSLog(@"%@",arr2);

posted @   孙富有(iOS工程师)  阅读(328)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
点击右上角即可分享
微信分享提示