数组内元素排序及数组排序

#define NSLog(FORMAT, ...) fprintf(stderr,"%s\n",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

@autoreleasepool {

NSArray *[email protected][@"mon",@"tue",@"wed",@"thu",@"fri",@"sat",@"sun"];

//1、数组内元素排序

NSArray *sortarr=[arr1 sortedArrayUsingSelector:@selector(compare:)];

for(id str in sortarr)

{

NSLog(@"%@",str);

}

NSLog(@"\n");

//2、数组排序-block

NSComparator block=^(id obj1,id obj2)

{

//NSComparisonResult result=[obj2 compare:obj1];

//return result=NSOrderedAscending;//升序排序按ASCILL代码排的

return [obj2 compare:obj1];

};

NSArray *sortArray=[arr1 sortedArrayUsingComparator:block];

for(id str in sortArray)

{

NSLog(@"%@",str);

}

NSLog(@"\n");

//插入一个元素,按原来拍好的顺序规则插入到数组中

NSMutableArray *b=[NSMutableArray arrayWithArray:sortArray];

[b addObject:@"sum"];

NSArray *sortArrays=[b sortedArrayUsingComparator:block];

for(id str in sortArrays)

{

NSLog(@"%@",str);

}

}

return 0;

}

时间: 2024-08-03 23:28:54

数组内元素排序及数组排序的相关文章

oc-数组内元素排序

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //数组内元素排序 NSArray *arr=@[@"MON",@"TUE",@"WED",@"THU",@"FRI",@"SAT",@"SUN"]; NSArray

PHP方便快捷的将二维数组中元素的某一列值抽离出来作为此二维数组内元素的key

得益于PHP的强大的内置数组函数array_column();array_combine(); 举个小栗子: <?php // 先查询出用户的基本信息 $userArray = [['id' => 'zs', 'name' => '张三'], ['id' => 'ls', 'name' => '李四'], ['id' => 'wr', 'name' => '王二']]; // 将二维数组内某具体列的值组成一个新用户数组 $userArrayNew = array_

简单的对数组内字符串排序方法

//  NSArray * sortedArray = [cache sortedArrayUsingSelector:@selector(compare:)]; { NSArray * arr1 = @[@"A",@"B",@"C",@"D"]; NSArray * arr2 = @[@"1",@"2",@"3"]; NSArray * arr3 = @[@&quo

C++_第七章函数的基本知识_求阶乘的子函数_ 函数参数类型为数组_ 求数组内所有元素和、部分元素和的方法_实现了先从键盘输入到一个数组中,再用for循环取读出数组中的元素 for循环也可以用break来结束循环的

/* 第七章函数的基本知识 */ /*01)c++对于返回值有一定的限制:可以是常量.变量.指针.结构对象或表达式,但不可以是数组02)c++返回数组的方法:将数组作为结构会对象组成部分来返回03)函数遇到return则结束该函数04)如果一个函数的两房额参数类型相同,则必须分别制定每个参数的类型,而不能像声明常规变量那样,将声明组合在一起05)*/ //本代码注意double类型的写法以及double和int类型数据的转换 1 #include <iostream> 2 3 void che

angularjs 解决ng-repeat数组内重复对象报错的问题

ng-repeat 循环数组内元素时,如果数组内元素重复,angular会抛出异常: Error: [ngRepeat:dupes] http://errors.angularjs.org/1.4.3/ngRepeat/dupes?p0=record%20in%20records&p…2coachCode%22%3A%2200455532%22%2C%22%24%24hashKey%22%3A%22object%3A5%22%7D 为解决这个问题,可以在ng-repeat指令中加上track b

javascript 常见数组操作( 1、数组整体元素修改 2、 数组筛选 3、jquery 元素转数组 4、获取两个数组中相同部分或者不同部分 5、数组去重并倒序排序 6、数组排序 7、数组截取slice 8、数组插入、删除splice(需明确位置) 9、数组遍历 10、jQuery根据元素值删除数组元素的方)

主要内容: 1.数组整体元素修改 2. 数组筛选 3.jquery 元素转数组 4.获取两个数组中相同部分或者不同部分 5.数组去重并倒序排序 6.数组排序 7.数组截取slice 8.数组插入.删除splice(需明确位置) 9.数组遍历 10.jQuery根据元素值删除数组元素的方法 数组常见操作包含了 增.删.查.改.插入.交集.并集 1.数组整体元素修改 //map,给数组每个元素加1 输出[1,2,3] $.map([0,1,2],function(n){ return n+1; })

LeetCode:Contains Duplicate - 判断数组内是否有重复元素

1.题目名称 Contains Duplicate(判断数组内是否有重复元素) 2.题目地址 https://leetcode.com/problems/contains-duplicate/ 3.题目内容 英文:Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in

转 :asp教程.net c#数组遍历、排序、删除元素、插入、随机元素 数组遍历

asp教程.net c#数组遍历.排序.删除元素.插入.随机元素数组遍历 short[] sts={0,1,100,200};for(int i=0;i<sts.lenght;i++){  if(sts[i]>50) {  .....  }} 数组随机元素 public  hashtable  noorder(int count)         {             arraylist mylist = new arraylist();             hashtable ha

2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小。

2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小. 我的大致思路是把这个整型数组转换成String数组,然后通过String类的compareTo方法对这个数组进行第一次排序,排序得到的结果恰好是按字典序排序,而字典序又恰好是数字从0-9的顺序,恰好符合这个要求.最后进行检验下,有的可能需要调换下顺序使得数最小. package com.cn.qunar.test; /** * @author 刘利娟 [email protected] * @