python实现冒泡排序的算法

冒泡排序是对数组里面两个相邻的数据进行比较并排序,最大的数会不断向后移动,因此叫冒泡排序。

冒泡排序的步骤:

1.首先对数组第一个数和第二个数进行比较,谁最小,谁排在前面

2.将第二个数与第三个数进行比较排序,谁最小,谁排前面,以此类推,把最大的数移到最后面,

3.以此类推,把较大的值排到后面

python 复制代码
data=[6,15,4,2,8,5,11,9,7,13]

for i in range(len(data)):
    for j in range(len(data)-i-1):
        if data[j]>data[j+1]:
            data[j],data[j+1] = data[j+1],data[j]

print(data)            

上面代码是python的冒泡排序代码,它是两层循环,首选外层循环选择要开始比较的数组元素下标

内层循环是进行比较排序

冒泡排序的时间复杂度是O(n^2)

空间复杂度是O(1)

相关推荐
深圳市快瞳科技有限公司1 分钟前
低空经济下,鸟类识别算法与无人机硬件的兼容性优化策略
算法·无人机
努力中的编程者14 分钟前
二叉树(C语言底层实现)
c语言·开发语言·数据结构·c++·算法
鹤旗28 分钟前
While语句,do-while语句,for语句
java·jvm·算法
雕刻刀29 分钟前
ERROR: Failed to build ‘natten‘ when getting requirements to build wheel
开发语言·python
qq_4160187229 分钟前
高性能密码学库
开发语言·c++·算法
何双新30 分钟前
Odoo 技术演进全解析:从 Widget 到 Owl,从 Old API 到声明式 ORM
python
NAGNIP31 分钟前
一文搞懂卷积神经网络经典架构-LeNet
算法·面试
宵时待雨40 分钟前
C++笔记归纳14:AVL树
开发语言·数据结构·c++·笔记·算法
NAGNIP1 小时前
一文搞懂深度学习中的池化!
算法·面试
山川行1 小时前
关于《项目C语言》专栏的总结
c语言·开发语言·数据结构·vscode·python·算法·visual studio code