Python算法(一) 数组冒泡排序(难度等级:easy)

冒泡排序(Bubble Sort)是一种典型的交换排序算法,通过交换数据元素的位置进行排序。
算法原理:从无序序列头部开始,进行两两比较,根据大小交换位置,直到最后将最大(小)的数据元素交换到了无序队列的队尾,从而成为有序序列的一部分;下一次继续这个过程,直到所有数据元素都排好序。算法的核心在于每次通过两两比较交换位置,选出剩余无序序列里最大(小)的数据元素放到队尾。
Python代码1:

#Python算法--冒泡排序1
import random
def main(array):
    for i in range(1,len(array)):
        for j in range(len(array)-i):
            if array[j] > array[j+1]:
                array[j],array[j+1]=array[j+1],array[j]
    print("冒泡排序数组:",array)
if __name__ == '__main__':
    array = []
    for i in range(15):
        array.append(random.randint(1,1000)) 
    print("随机生成数组:",array)
    main(array)

执行效果:

python冒泡排序1

Python代码2:

#Python算法--冒泡排序2
import random
def main(array):
    num = len(array)
    while num > 0:
        for j in range(num-1):
            if array[j] > array[j+1]:
                array[j],array[j+1]=array[j+1],array[j]
        num-=1
    print("冒泡排序数组:",array)
if __name__ == '__main__':
    array = []
    for i in range(15):
        array.append(random.randint(1,1000)) 
    print("随机生成数组:",array)
    main(array)

代码1和代码2写法略有不同,但原理相同,测试执行效率相同。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、概述 排序算法概念 在计算机科学与数学中,一个排序算法是将一组杂乱无章的数据按一定的规律顺次排列起来的算法。排...
    简书冷雨阅读 4,783评论 0 0
  • 读懂自己的情绪,就能明白,每个人的委屈都是一样的。一旦你觉得你在乎的人否定你的付出。人就会很难过。所以,感谢这件事...
    玩儿_温暖阅读 1,688评论 0 0
  • 每次上地铁,车厢里的扩音喇叭里总是播放着不断重复的一句话:请将座位留给有需要的人。我总是不明白,什么才是有需要的?...
    格小主阅读 2,405评论 0 0
  • 1 生活在上海,慢慢的也就习惯了在地铁里听各种各样的讲话。下班回来在地铁上的时候,听到旁边的两个女生讲话,可能是我...
    深海的鱼更好阅读 1,711评论 0 1
  • 看了大家都在說接口支付APP體驗多好多好,就下載來玩玩。但是發現自己的信用卡怎麼綁就是綁不成功,職業病發作,就立馬...

友情链接更多精彩内容