冒泡算法

Posted brf-test

tags:

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

冒泡算法:说白了就是通过循环来把相邻的两个数字进行对比,对比过后进行调换

l = [2,5,12,352,1,23,35,63,5,2] #
for i in range(len(l)-1): #这个是控制总共需要多少趟,需要循环N-1趟
    for j in range(len(l)-1-i):
#这个循环是控制交换的,减1是最后一位不用对比,减i是每次循环都会有一位是排序好了,可以少循环一次
        if l[j] > l[j+1]: #相邻的对比
            l[j],l[j+1] = l[j+1],l[j]  #相邻的交换
print(l)

结果:[1, 2, 2, 5, 5, 12, 23, 35, 63, 352]

 

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

冒泡排序算法原理和代码实现,就是这么简单。。。

排序算法之冒泡选择插入排序(Java)

排序算法之冒泡选择插入排序(Java)

算法漫游指北(第七篇):冒泡排序冒泡排序算法描述动图演示代码实现过程分析时间复杂度和选择排序算法描述动图演示代码实现过程分析时间复杂度

算法漫游指北(第七篇):冒泡排序冒泡排序算法描述动图演示代码实现过程分析时间复杂度和选择排序算法描述动图演示代码实现过程分析时间复杂度

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