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)

相关推荐
Nil2086 分钟前
leetcode 70爬楼梯
算法·leetcode·动态规划
垆边人似月.18 分钟前
最长递增子序列的个数(200分 / 动态规划)
算法·动态规划
朝朝辞暮i30 分钟前
VLA 系统学习第 12 课:为什么机器人不能只看一帧?——时间序列、Observation History 与 Action Chunk
人工智能·python·深度学习·神经网络·vla
朝朝辞暮i33 分钟前
VLA 系统学习第 8 课:Optimizer 到底在干什么?——从 Learning Rate 到 SGD、Momentum 和 Adam
人工智能·python·深度学习·神经网络·vla
镜子AI35 分钟前
教培机构多模态内容跨模态检索系统:基于CLIP的统一表征与图文混合召回算法
人工智能·python·算法·机器学习
落魄大学生之流水线上谋生计37 分钟前
Selenium 入门到实战:用 Python 写出稳定的浏览器自动化
python·selenium·自动化
汤米粥1 小时前
后端开发主流技术方案
java·python·golang·php·nodejs·后端开发
小宋10211 小时前
合成评测集怎么造才不“自嗨”:自动出题、去重、泄漏检测与人工抽检
人工智能·算法·机器学习
我的xiaodoujiao1 小时前
Django 基础知识详细图文教程 13-Django 模型定义与使用 3
数据库·后端·python·测试工具·oracle·django