关于冒泡排序的for循环理解

# 冒泡排序
# 本次排序时从小到大,把数值大的数往后排

a = [13,2,341,1,54,5,2,5,6]  # 一共9个数
def bubble_sort(a):
    for i in range(len(a)-1):  # 长度-1代表后面8个最大的数已经排好了,最后一个数就不用排了
        count = 0
        for j in range(len(a)-i-1):  #-i代表,已经排好后面的最大的i个数了,只需要对比9-i个数就可以了
        							#-1代表:因为是两两对比,比如需要排6个数,那么只需要对比5次就行了
            if a[j] > a[j+1]:
                a[j],a[j+1] = a[j+1],a[j]
                count +=1
        if count == 0:
            return a
    return a
bubble_sort(a)
posted @ 2020-03-26 19:19  what-you-name  阅读(9)  评论(0编辑  收藏  举报