iosOC可变数组选择,冒泡排序

时间:2022-09-07 10:11:50

#pragma mark 可变数组的排序

NSMutableArray * array = [NSMutableArray arrayWithObjects: @"1",@"8",@"2",@"7",@"2",@"5",@"9",nil];

//选择

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

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

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

//交换

[array exchangeObjectAtIndex:i withObjectAtIndex:j];

}

}

}

NSLog(@"%@",array);

NSMutableArray * array1 =[[NSMutableArray alloc]initWithObjects:@"zhige",@"saozi",@"bge",@"xiaolong",@"xiaomo",@"xiaomi", nil];

//冒泡

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

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

if(([array1[j] compare:array1[j+1]]) == NSOrderedDescending){

//交换

[array1 exchangeObjectAtIndex:j withObjectAtIndex:j+1];

}

}

}

NSLog(@"%@",array1);

iosOC可变数组选择,冒泡排序的更多相关文章

  1. JAVA之旅(三)——数组,堆栈内存结构,静态初始化,遍历,最值,选择&sol;冒泡排序,二维数组,面向对象思想

    JAVA之旅(三)--数组,堆栈内存结构,静态初始化,遍历,最值,选择/冒泡排序,二维数组,面向对象思想 我们继续JAVA之旅 一.数组 1.概念 数组就是同一种类型数据的集合,就是一个容器 数组的好 ...

  2. 可变数组NSMutableArray

    //创建一个空的可变数组 NSMutableArray *array = [NSMutableArray array]; //向数组里面添加对象 [array addObject:@"&lt ...

  3. Objective - C NSArray不可变数组和NSMutableArray可变数组

    OC中存储数据最常用 的两个容器就是数组和字典,而作为最常用的,应该了解这所有的特点,及用法. OC中的数组是一个容量,有序的管理了一系列元素,并且存放在数组里的元素,必须是对象类型. 不可变数组,见 ...

  4. NSArray与NSMutableArray 数组与可变数组

    1.NSArray 是一个父类,NSMUtableArray是其子类,他们构成了OC的数组.2.NSArray的创建NSArray * array = [[NSArray alloc]initWith ...

  5. objective-c可变数组

     1 #pragma mark ---------------可变数组-----------------  2 //        可以在数组里面进行增删改的操作  3 //  4 //        ...

  6. iOS -Swift 3&period;0 -Array&lpar;数组与可变数组相关属性及用法&rpar;

    // // ViewController.swift // Swift-Array // // Created by luorende on 16/9/12. // Copyright © 2016年 ...

  7. 【转】不可变数组NSArray与可变数组NSMutableArray

    原文网址:http://www.jianshu.com/p/1ad327f56d1d 不可变数组NSArray //创建一个空数组 NSArray *array = [NSArray array]; ...

  8. Swift不可变数组

    Objective-C编写了2个不同的类来区分不可变数组(NSArray)和可变数组(NSMutableArray): Swift通过使用常量和变量来区分不可变数组和可变数组. 只要将数组定义为常量, ...

  9. OC4&lowbar;可变数组

    // // main.m // OC4_可变数组 // // Created by zhangxueming on 15/6/11. // Copyright (c) 2015年 zhangxuemi ...

随机推荐

  1. 使用JDBC进行批处理

    在实际的项目开发中,有时候需要向数据库发送一批SQL语句执行,这时应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率. JDBC实现批处理有两种方式:statement和pr ...

  2. 未能加载文件或程序集&OpenCurlyDoubleQuote;Enyim&period;Caching”或它的某一个依赖项。未能验证强名称签名

    from:http://www.mzwu.com/article.asp?id=3741 itHub下载Enyim项目,编译后引用程序运行出错: 引用内容 未能加载文件或程序集“Enyim.Cachi ...

  3. C&num;中Delegate和Event以及它们的区别(转载)

    一.Delegate委托可以理解为一个方法签名. 可以将方法作为另外一个方法的参数带入其中进行运算.在C#中我们有三种方式去创建委托,分别如下: public delegate void Print( ...

  4. dennis gabor 从傅里叶&lpar;Fourier&rpar;变换到伽柏&lpar;Gabor&rpar;变换再到小波&lpar;Wavelet&rpar;变换(转载)

    dennis gabor 题目:从傅里叶(Fourier)变换到伽柏(Gabor)变换再到小波(Wavelet)变换 本文是边学习边总结和摘抄各参考文献内容而成的,是一篇综述性入门文档,重点在于梳理傅 ...

  5. 第六章 Qt布局管理器Layout

    第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...

  6. 开机时候系统总是提醒Android系统更新

    今天刷了个android的rom,平常没有经常刷机,对这个也不是特别了解. 但是刷完开机,显示系统升级,一开始都是18个app,后来捣鼓了几次,安装了几个常用的软件,居开机的时候,升级的app需要90 ...

  7. Docker学习笔记&lpar;1&rpar; — docker 常用命令

    1. docker version显示 Docker 版本信息.2. docker info显示 Docker 系统信息,包括镜像和容器数.3. docker searchdocker search ...

  8. ajax url参数中文乱码解决方法

    较好的处理办法,对js的url中的中文参数值使用两次encodeURI(),即encodeURI(encodeURI("url的中文参数值")) JS代码: var name=&q ...

  9. STS(Spring Tool Suite)下SSM(Spring&plus;SpringMVC&plus;Mybatis)框架搭建(二)

    继完成controller配置并使用controller实现页面跳转,现连接数据库进行登录. 在SSM框架中,使用Mybatis与数据库连接,因此需要配置关于mybatis的配置. 废话少说直接开始: ...

  10. primo驱动启动顺序

    primo驱动启动顺序HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ServiceGroupOrderSystem ReservedEMSWdfLoa ...