冒泡算法

2019-10-08  本文已影响0人  夜醉梦紅尘

冒泡排序算法的原理如下:

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

image.png

li=[9,4,7,3,2]

第一轮排序
94732
49732
47932
47392
47329

第二轮排序
47329
47329
43729
43279

第三轮排序
43279
34279
32479

第四轮排序
32479
23479

li=[9,4,7,3,2]

l=len(li)

def bubble_sort(args):
    for i in range(1,len(li)):        #一共要换len-1轮
        for j in range(0,len(li)-i):    #每一轮要比较的次数
            if li[j]>li[j+1]:     #如果比后面一个大,就交换
                li[j],li[j+1]=li[j+1],li[j]
    print(li)
    
bubble_sort(li)

[各种排序原理图解连接]
(http://tools.jb51.net/aideddesign/paixu_ys
)

上一篇 下一篇

猜你喜欢

热点阅读