Objective-C插入排序

插入排序(从大到小排列)###

插入排序的算法思路是:假定数组的0位置是已经排列好的,是有序的。然后从1位置开始和0位置开始比较,如果1位置的数比0位置的小,说明0和1位置是已经按从大到小排列好的。然后以此类推,在从2位置开始比较。2位置先和1位置比较,如果2位置大于1位置的元素,开始移动,直到不大于的时候,停止,以此类推。

- (void)insertSort{
   
    NSMutableArray * insert =[NSMutableArray arrayWithObjects:@6,@1,@2,@7,@9,@3,@4,@5,@10,@8, nil];
    for (NSInteger i = 1; i insert[i-1]){
            NSNumber * temp = insert[i];
            NSInteger j = i;
            while (j>0&&temp>insert[j-1]) {
                insert[j]=insert[j-1];
                j--;
            }
            insert[j]=temp;
        }
    }
    NSLog(@"%@",insert);
    
}

输出结果

2016-04-21 18:50:45.252 RLMZ[4253:451340] (
    10,
    9,
    8,
    7,
    6,
    5,
    4,
    3,
    2,
    1
)

你可能感兴趣的:(Objective-C插入排序)