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);
iosOC/C不可变数组排序的更多相关文章
- iOS学习16之OC集合遍历和数组排序
1.集合遍历 1> 遍历 集合(Collection):OC中提供的容器类:数组,字典,集合. 遍历:对集合中元素依次取出的过称叫做遍历. 三种方式:① for循环遍历: ② NSEnumera ...
- OC数组排序
NSArray *array = @[@"tailong", @"kaersasi", @"airuiliya", @"yingl ...
- iOS学习之Object-C语言集合遍历和数组排序
一.集合遍历 1.集合:OC中提供的容器类,数组,字典,集合. 2.遍历:对集合中元素依次取出的过程叫做遍历. 二.for循环遍历 1.通过for循环的循环变量用作数组元 ...
- OC:Block语法、Block使用、Block实现数组排序
Block //定义一个求两个数最大值函数 int maxValue (int ,int); //函数的实现 int maxValue (int a, int b){ return a > b ...
- block 数组排序
#import <Foundation/Foundation.h> //定义⼀一个block,返回值为BOOL,有两个NSString参数.实现:判 //断字符串是否相等. BOOL (^ ...
- 自己在OC考试中的试题
Objective-C考试 [关闭] ※ 选择题(共40题,每题2分) 1. 以下说法正确的是________. 答案:(C) A.alloc,retain,release,dealloc都会使对 ...
- iOS - OC NSArray 数组
前言 @interface NSArray<__covariant ObjectType> : NSObject <NSCopying, NSMutableCopying, NSSe ...
- iOS - Swift Array 数组
前言 public struct Array<Element> : CollectionType, MutableCollectionType, _DestructorSafeContai ...
- OC小结
#import <Foundation/Foundation.h>#import "Person.h"int main(int argc, const char * a ...
随机推荐
- B/S和C/S【转载Jane的博客 http://blog.sina.com.cn/liaojane】
什么是C/S和B/S结构? C/S又称Client/Server或客户/服务器模式.服务器通常采用高性能的PC.工作站或小型机,并采用大型数据库系统,如Oracle.Sybase.In ...
- Oracle Day 08 游标与例外的总结
1.游标的使用(cursor) 基本格式: 定义游标: cursor 游标名 is select语句; 打开游标: open 游标名; loop(循环) fetch ... into ...; ...
- python 基础学习3-函数
1. 函数参数-默认参数 python函数也可以跟C语言一样,在函数的形参中设定默认值. >>> def test(flag, port = 8080) ... print port ...
- spark-2.0.0与hive-1.2.1整合
SparkSQL与Hive的整合 1. 拷贝$HIVE_HOME/conf/hive-site.xml和hive-log4j.properties到 $SPARK_HOME/conf/ 2. 在$SP ...
- hive-1.2.1安装步骤
一.Hive安装和配置 1.先决条件 已经安装好hadoop-2.4.1,hbase-1.0.0. 2.下载Hive安装包 当前Hive可到apache官网下载,选择的是hive-1.2.1.运行: ...
- Ubuntu 14.0 升级内核到指定版本
1.卸载现有内核sudo apt purge linux-headers-* linux-headers-*-generic linux-image-*-generic linux-image-ext ...
- HTML 标记
- jquery的animate动画
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- Scala学习---映射和元祖
1.设置一个映射,其中包含你想要的一些装备,以及他们的价格.然后构建另一个映射,采用同一组键,但在价格上打9折. scala> val map = Map("a"->1 ...
- Android原生Cling演化的覆盖层
package com.example.demotest; import android.content.Context; import android.graphics.Paint; import ...