objective-c NSArray 如何排序 5

NSArray*arr1=[NSArrayarrayWithObjects:@"8",@"2",@"5",@"4",nil];将这个数组从小到大排序... NSArray * arr1 = [NSArray arrayWithObjects:@"8",@"2",@"5",@"4", nil];
将这个数组从小到大排序
展开
 我来答
SanMao_SF5
2015-10-24 · 超过40用户采纳过TA的回答
知道小有建树答主
回答量:71
采纳率:0%
帮助的人:72.2万
展开全部

你这数组存的是字符串类型,要比大小肯定要转换,其实搞个C语言的数组或者Swift数组都很容易实现,发一个我以前写的C的冒泡和选择排序代码

#include <stdio.h>
#include<stdlib.h>


void maoPao(int arr[],int len){

    //定义第三方的变量
    int temp;
    for (int i=0; i<len; i++) {
        for (int j=0; j<len-i-1; j++) {
            if (arr[j]>arr[j+1]) {
                temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }
}

void xuanZe(int arr[],int len){

    //定义第三方变量
    int temp;
    for (int i=0; i<len; i++) {
        for (int j=i+1; j<len; j++) {
            if (arr[i]>arr[j]) {
                temp=arr[i];
                arr[i]=arr[j];
                arr[j]=temp;
            }
        }
    }
}

int main(int argc, const char * argv[]) {
    
    //随机输入一些乱序1-100的数
    //定义一个数组保存数据
    int arr[20]={0};
    for (int i=0; i<20; i++) {
        arr[i]=arc4random_uniform(100)+1;
        //遍历数组
        printf("%d\t",arr[i]);
    }
    printf("\n");
    //调用函数排序
    //maoPao(arr, 20);
    
    xuanZe(arr,20);
    
    //遍历排序后的数组
    for (int i=0; i<20; i++) {
        printf("%d\t",arr[i]);
    }
    printf("\n");
    
    
    return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式