• 冒泡算法的深入理解


    简述

    冒泡主要采用两个循环思想,外循环根据数据个数控制循环次数需要循环len(num)-1次、内循环主要是len(num)个数进行两两比较,每次遍历过程中把相对小的数排到前面。这样遍历len(num)-1次结果就是正序排列。

    实例说明

    代码:

    #coding=utf-8

    def maoPao(num):

        for i in range(len(num)-1):

            for j in range(len(num)-1-i):#i只是更明确下比较次数,也可以不减i排出的结果一样的

                if num[j]>num[j+1]:

                    num[j],num[j+1] = num[j+1],num[j]

        return num

    if __name__=='__main__':

        shili = maoPao(num=[1,6,2,3,8])

        print shili

    图解:

    其他方式

    Python内置函数:list1.sort() 、reverselist.sort()

    有人会问,既然有这么简便的排序算法为什么还要我们去费劲八叉的写什么冒泡算法?冒泡算法是初学代码算法最好的方式,它有助于初学者深入理解使用for循环。帮助我们在工作中灵活使用提升工作效率。

    什么时候用for循环什么时候用while循环?请参照我的下一篇博客。有什么不明白的可以在评论区留言@我,我会持续为大家解答~

    转载引用请标明出处,本博出自喝了少不如不喝的博客https://home.cnblogs.com/u/wangdadada
  • 相关阅读:
    hdu1410 数学题组合概率 log优化
    Triangle
    Unique Paths II
    Unique Paths
    Pascal's Triangle II
    Pascal's Triangle
    Plus One
    Remove Duplicates from Sorted Array II
    Remove Duplicates from Sorted Array
    Remove Element
  • 原文地址:https://www.cnblogs.com/wangdadada/p/12059274.html
Copyright © 2020-2023  润新知