OC_选择排序
NSMutableArray *mutArray = [NSMutableArray arrayWithObjects:@1,@4,@2,@3,@5,nil];
for (int i=0; i<mutArray.count; i++) {
for (int j=i+1; j<mutArray.count; j++) {
if (mutArray[i]<mutArray[j]) {
[mutArray exchangeObjectAtIndex:i withObjectAtIndex:j];
}
}
}
NSLog(@"%@",mutArray);
OC_冒泡排序
NSMutableArray *arr_M = [NSMutableArray arrayWithObjects:@1,@4,@2,@3,@5,nil];
//遍历`数组的个数`次
/*
i = 0 的时候,j的相邻两个位置都要比较排一下位置:
j = 0 的时候:arr_M = 41235
j = 1 的时候:arr_M = 42135
j = 2 的时候:arr_M = 42315
j = 3 的时候:arr_M = 42351
i = 1;
…… ……
*/
for (int i = 0; i < arr_M.count; ++i) {
//遍历数组的每一个`索引`(不包括最后一个,因为比较的是j+1)
for (int j = 0; j < arr_M.count-1-i; ++j) {
//根据索引的`相邻两位`进行`比较`
if (arr_M[j] < arr_M[j+1]) {
[arr_M exchangeObjectAtIndex:j withObjectAtIndex:j+1];
}
}
}
NSLog(@"最终结果:%@",arr_M);
参考原文:排序算法
网友评论