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 分钟前
一篇文章讲清楚:Adaboost算法与GBDT
人工智能·算法
runningshark9 分钟前
CH-6图论基础-有向树
数据结构
AR-26710-10 分钟前
机器学习复习收官Day12
人工智能·python·机器学习·scikit-learn
旖旎夜光10 分钟前
LeetCode 525:连续数组(前缀和) —— 题解
数据结构·c++·算法·leetcode·前缀和
xzal1211 分钟前
Python之filter()和map()的区别(仅供学习参考)
笔记·python
白狐_79818 分钟前
408 数据结构|双散列与探测覆盖率:互质判断法
数据结构
随遇而安zx27 分钟前
【地基篇】---JVM 类加载 源码解析(基于 Java 8)
java·jvm·python
zander25827 分钟前
LeetCode 32. 最长有效括号
算法
lvwangshu1 小时前
AC 自动机
算法·字符串
2601_962300471 小时前
Python TensorFlow对比PyTorch_Python TensorFlow和PyTorch在机器学习中的差异
pytorch·python·深度学习·机器学习·tensorflow