冒泡排序——从小到大排序

夙愿已清 提交于 2019-12-04 20:33:53
li=[1,5,2,44,66,564,33,76,378]def bubble_sort(li):    #获取列表的长度    n=len(li)    #遍历列表长度减1次    for i in range(1,n):        #创建一个变量,用来几率冒泡,是否有数据交换位置        status=False        #每次遍历获取第一个元素,依次和后面的元素进行比较        for j in range(n-i):            #判断当前元素和后一个元素的值            if li[j]>li[j+1]:                #交换当前元素和后一个元素的值                li[j],li[j+1]=li[j+1],li[j]                #只有有数据交换位置,则修改status的值                status=True                #每一轮冒泡结束之后,判断当前status是否为False,如果为False,则说明上一轮冒泡没有任何数据的顺序(即数据是有序的)        if not status:            return li    return lires=bubble_sort(li)print(res)
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!