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)

相关推荐
Дерек的学习记录4 小时前
C++:入门基础(下)
开发语言·数据结构·c++·学习·算法·visualstudio
徐同保4 小时前
python异步函数语法解析,async with ... as ...语法解析
数据库·python·oracle
yugi9878385 小时前
无线传感器网络中GAF算法节点特性分析
网络·算法
m***06685 小时前
SpringBoot项目中读取resource目录下的文件(六种方法)
spring boot·python·pycharm
1027lonikitave5 小时前
使用斐波那契数列讲解尾递归
算法
eWidget5 小时前
数据可视化进阶:Seaborn 柱状图、散点图与相关性分析
数据库·python·信息可视化·kingbase·数据库平替用金仓·金仓数据库
清水白石0086 小时前
Python 柯里化完全指南:从函数式思想到工程实践
linux·服务器·python
滴滴答滴答答6 小时前
LeetCode Hot100 之 16 合并两个有序链表
算法·leetcode·链表
ASKED_20197 小时前
企业级大模型微调(Fine-tuning)策略
大数据·人工智能·算法