冒泡排序

2017-12-14  本文已影响13人  无题007

冒泡排序也是通过两重循环,外层循环和选择排序一样,通过n-1次找最小(或最大)值,只是内循环的比较 实现方式不同。它是通过n-1次找最大值的方式实现排序的,但是找最大值的方法也是不同于选择排序的:
冒泡排序找最大值的方式是从第一个元素开始,每相邻的两个元素依次比较,如果前面的元素小于后面的元素,则两者交换。一趟排序后,最大的元素就被放到了最后的位置。剩余的n-1个元素重复该过程。

代码如下:

- (void)bubbleSort{
    
    for(NSInteger i = 0; i < _array.count-1; i ++ ){
        for(NSInteger j = 0; j < _array.count - i - 1; j ++){
            if(_array[j] > _array[j+1]){
                [_array exchangeObjectAtIndex:j withObjectAtIndex:j+1];
            }
        }
    }
}
上一篇下一篇

猜你喜欢

热点阅读