python 算法中的--冒泡排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 算法中的--冒泡排序相关的知识,希望对你有一定的参考价值。

#列表每两个相邻的数,如果前面的比后面的大,那么就交换这两个数
# shuffle() 方法将序列的所有元素随机排序。
import random
def bubble_sort(li):
    for i in range(len(li)-1): #i代表趟
        for j in range(len(li)-i-1): #j列表
            if li[j]>li[j+1]:
                li[j],li[j+1]=li[j+1],li[j]
data=list(range(5))
random.shuffle(data) #打乱排序
print(data)
bubble_sort(data)
print(data)

 


# [2, 1, 3, 0, 4]
# [0, 1, 2, 3, 4]

#冒泡排序中执行一趟而没有交换,则列表已经是有序状态,可以直接结束算法。
import random
def bubble_sort(li):
    for i in range(len(li)-1): #i代表趟
        exchange=False
        for j in range(len(li)-i-1): #j列表
            if li[j]>li[j+1]:
                li[j],li[j+1]=li[j+1],li[j]
                exchange=True
        if not exchange:
            return
data=list(range(5))
print(data)
bubble_sort(data)
print(data)

 






以上是关于python 算法中的--冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

数据结构与算法冒泡排序——JavaC++Python 中的算法示例代码

python 算法中的--冒泡排序

Python嵌套循环实现冒泡排序

Python中的排序---冒泡法

Python的冒泡排序和插入排序算法

11.python排序算法之冒泡排序简单选择排序,二元选择排序直接插入排序