python 冒泡排序 时间复杂度
1 算法描述
比较相邻的元素,如果前一个比后一个大,交换之。
第一趟排序第1个和第2个一对,比较与交换,随后第2个和第3个一对比较交换,这样直到倒数第2个和最后1个,将最大的数移动到最后一位。
第二趟将第二大的数移动至倒数第二位
…
因此需要n-1趟;
2 代码实现
def bobble_sort(li):# 外层循环for i in range(len(li) - 1):# print(li)for j in range(len(li) - i - 1):# 两相邻元素比较if li[j] > li[j + 1]:# 如果前面的元素大于后面的元素 就进行数据替换li[j], li[j + 1] = li[j + 1], li[j]
测试代码
li = [3, 2, 4, 7, 1, 2]
# 排序前
print(li)
# 执行排序
bobble_sort(li)
# 排序后
print(li)
动态
3 时间复杂度
python 冒泡排序 时间复杂度相关推荐
- python冒泡排序时间复杂度_Python算法中的时间复杂度问题
在实现算法的时候,通常会从两方面考虑算法的复杂度,即时间复杂度和空间复杂度.顾名思义,时间复杂度用于度量算法的计算工作量,空间复杂度用于度量算法占用的内存空间. 本文将从时间复杂度的概念出发,结合实际 ...
- python冒泡排序函数_python冒泡排序-Python,冒泡排序
arr = [ 7 , 4 , 3 , 67 , 34 , 1 , 8 ] . def bubble_sort : 最近在学习Python,下面是我的一些笔记 冒泡排序 实现思路: 使用双重for循环 ...
- python-Day5-深入正则表达式--冒泡排序-时间复杂度 --常用模块学习:自定义模块--random模块:随机验证码--time datetime模块...
正则表达式 语法: mport re #导入模块名 p= re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0-9]代表匹配0至9的任意一个 ...
- python 冒泡排序及优化_Python冒泡排序及优化
一.冒泡排序简介 冒泡排序(Bubble Sort)是一种常见的排序算法,相对来说比较简单. 冒泡排序重复地走访需要排序的元素列表,依次比较两个相邻的元素,如果顺序(如从大到小或从小到大)错误就交换它 ...
- python冒泡排序算法非递归_python 冒泡排序,递归
今天LeetCode的时候暴力求解233 问题: 给定一个整数 n,计算所有小于等于 n 的非负数中数字1出现的个数. 例如: 给定 n = 13, 返回 6,因为数字1出现在下数中出现:1,10,1 ...
- python冒泡排序
python 冒泡排序: data=[7,9,2,8,3,1,4,6,5]for i in range(len(data)): #数据长度len()就是for-in循环的次数; for j in ra ...
- 快速排序,冒泡排序时间复杂度推导
快速排序,冒泡排序时间复杂度推导 快速排序时间复杂度分析: 数组长度为n 1,平均复杂度: t(n) = cn + 2t(n/2) = cn + 2(cn/2 + 2t(n/4)) = 2cn + 4 ...
- python字符串的冒泡排序_如何实现python冒泡排序算法?
冒泡排序是一种简单的排序技术,它通过比较相邻的元素遍历整个列表,对它们进行排序并交换元素,直到对整个列表进行排序. 算法:给定一个包含n个元素的列表L,这些元素的值或记录为L0, L1,-,Ln-1, ...
- python冒泡排序原理_如何实现python冒泡排序算法?
冒泡排序是一种简单的排序技术,它通过比较相邻的元素遍历整个列表,对它们进行排序并交换元素,直到对整个列表进行排序. 算法:给定一个包含n个元素的列表L,这些元素的值或记录为L0, L1,-,Ln-1, ...
最新文章
- Object-C 打开工程,选择模拟起时,提示no scheme
- 华为手机拍照后图库里无照片_华为图库中上千张照片,如何快速找到想要的照片?...
- 2018年第九届蓝桥杯 - 国赛 - C/C++大学B组 - B. 激光样式
- ccs 移植创建新工程_3D生物打印器官新突破,模拟肺与肝脏,未来可能实现定制人类器官...
- html5学习新的知识总结(一)
- springboot之数据校验及多环境切换
- hadoop fs –ls /hbase 无内容_Hadoop大数据实战系列文章之HDFS文件系统
- 是否应该提供一个dao.insertIgnoreNull ? (像updateIgnoreNull一样)
- 魅族17 Pro通过3C认证:魅族史上最强快充
- IDEA使用和实用小技巧
- 整理cin.getline与getline函数
- cocos2d- AtlasSprite AtlasSpriteManager
- 2017年IT类公司世界500强企业及其简评
- 微博无限私信技术软件_用手机制作剪辑视频的教程,手机视频剪辑软件还有哪些?...
- LAMP 技术简介(2)
- windowsserver2016安装
- 2023年软考考试时间及相关安排
- m3u8转MP4 视频最最有效的办法!!!!!!!
- dr/bdr选举的故事(有意思)
- Go全局唯一ID选型集合