冒泡排序算法学习笔记

作者: 爱猫猫的老狗 | 来源:发表于2017-11-16 08:33 被阅读4次

冒泡排序算法的流程如下:
比较相邻的元素。 如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。 在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

感谢原作者:咖喱py

链接:http://www.jianshu.com/p/c7705776f547
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

def bubble(a):
    b = len(a) - 1 #一共要循环比较的次数是列表长度-1
    while b : #如果次数为0退出循环
        for i in range(b):#循环b次
            j = i + 1#下一个项目元素
            if a[i]>a[j]:#如果当前项目元素大于下一个元素
                a[i], a[j] = a[j], a[i]#就交换位置(就把大的放在后面)
        b -= 1    #循环次数减一(不用每次都全部遍历比较,\
                  #因为每次遍历都会产生一个最大值放在后面,
                  #这个值就不用再参加下次的比较了,
                  #也就是说遍历的次数可以逐次减一,
                  #提高程序效率。)
    print(a)#循环比较结束,输出排序结果

相关文章

  • 七大排序算法之冒泡排序

    七大排序算法之冒泡排序 @(算法笔记)[排序算法, 冒泡排序, C++实现] 冒泡排序介绍 冒泡排序是七大排序算法...

  • 2020-04-30-排序算法

    冒泡排序 直接选择排序 插入排序 快速排序 参考 算法学习笔记17-经典排序算法八大排序算法稳定性分析

  • 算法入门——冒泡排序、选择排序

    上篇文章学习了算法入门——顺序查找、二分查找,这篇文章我们学习算法入门——冒泡排序、选择排序。 冒泡排序 冒泡排序...

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 经典排序算法总结

    经典排序算法集锦 冒泡法 排序算法入门之冒泡排序 排序算法入门之冒泡排序优化

  • 前端算法学习-第一篇

    冒泡排序算法 冒泡排序算法是最慢的排序算法之一,也是最容易实现的排序算法。之所以叫冒泡排序是因为使用这种算法排序时...

  • 谈谈几个常用的排序算法

    最近在读< >时,了解到了很多常用的排序算法,故写一篇读书笔记记录下这些排序算法的思路和实现. 冒泡排序 冒泡排序...

  • PHP常见排序算法学习

    题记: 常见的排序算法有:冒泡排序法,快速排序法,选择排序法,插入排序法,此处作为自己最近面试准备进行的学习笔记,...

  • Python算法--排序-冒泡排序

    一、冒泡排序 我们在学校都学习过排序算法,这些排序算法中就有一个我们常提到的冒泡排序(Bubble Sort)。 ...

  • iOS算法总结-冒泡排序

    iOS算法总结-冒泡排序 iOS算法总结-冒泡排序

网友评论

    本文标题:冒泡排序算法学习笔记

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