美文网首页
十大排序算法之一:冒泡排序(Python)

十大排序算法之一:冒泡排序(Python)

作者: 李蕴Ronnie | 来源:发表于2019-05-14 23:56 被阅读0次
    冒泡排序
    1.算法步骤

    比较相邻的元素,如果第一个比第二个大,就交换他们两个;
    对每一个对相邻元素做同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
    针对所有的元素重复以上的步骤,除了最后一个。
    持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

    2. Python代码实现
    def bubble_sort(l):
        n = len(l)
        while n > 0:
            for i in range(1, n):
                if l[i] < l[i - 1]:
                    l[i], l[i - 1] = l[i - 1], l[i]
            n -= 1
        return l
    
    
    l = [6, 3, 5, 9, 12, 7]
    print(bubble_sort(l))
    

    返回结果

    [3, 5, 6, 7, 9, 12]
    
    3. 时间复杂度:O(n²)

    相关文章

      网友评论

          本文标题:十大排序算法之一:冒泡排序(Python)

          本文链接:https://www.haomeiwen.com/subject/fjoyaqtx.html