排序算法一:冒泡排序

2020-05-09  本文已影响0人  九色鹿的女孩
冒泡排序

原理:
1.比较相邻的两个数,如果第一个比第二个大,就交换他们的位置
2.对每一对相邻的元素做同样的工作,从开始第一对,到最后一对,这样子,最后的元素应该是最大的值
3.针对所有的元素重复以上步骤,除了最后一个
4.持续重复上面步骤,知道没有任何一对数字需要交换

OC实现

- (void)sortData {
    for (int i = 0; i < self.array.count-1; i++) {
        for (int j = 0; j < self.array.count-1-i; j++) {
            NSInteger left = [self.array[j] integerValue];
            NSInteger right = [self.array[j+1] integerValue];
            if (left > right) {
                [self.array exchangeObjectAtIndex:j withObjectAtIndex:j+1];
            }
        }
    }
}

冒泡排序的最坏时间复杂度为:O(n²)
上一篇 下一篇

猜你喜欢

热点阅读