python初级(302) 7 列表(二)冒泡排序
2024-10-17 05:10:29
一、复习:
1、如何创建一个空列表,如何创建一个有数据的列表
2、列表可以包含的内容
3、从列表中获取元素和修改元素的方法
4、列表的分片
5、增加元素和删除元素
6、选择排序的算法:
一堆数据,每次找出最小的放入新数组,然后原数组中的数删除,直到原数组为空
二、冒泡排序
一堆数据,从左向右,每次比较相邻两个数,前一个比后一个大,就交换位置,然后继续比较,一直比较到最大的那个排到最后。然后再次遍历数组,这次最后那个已经排好了,所以只需要比到倒数第二个,以此类推
数据: arr = [9, 7, 8, 4]:
第一次大循环:
1 [7, 9, 8, 4]
2 [7, 8, 9, 4]
3 [7, 8, 4, 9]
第二次大循环:
1 [7, 8, 4, 9]
2 [7, 4, 8, 9]
第三次大循环:
[4, 7, 8, 9]
程序如下:
def maopao(arr):
"""
冒泡排序
"""
# arr = [9, 7, 8, 4]
n = len(arr)
for i in range(n-1):
for j in range(n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr my_arr = [9, 7, 8, 4]
print(my_arr)
maopao(my_arr)
print(my_arr)
三、课后作业
用冒泡排序将班级学生的数学成绩进行排序(从高到低排序)
95, 98, 97, 100, 80, 93, 99
最新文章
- ORM系列之二:EF(3) 数据库连接
- Android中事件传递机制的总结
- html5,实例开发代码
- 弹窗文件js+css
- JavaScript事件冒泡和事件委托
- 【机器学习算法-python实现】决策树-Decision tree(1) 信息熵划分数据集
- VBS基础篇 - 常量
- uva 10154
- Hadoop的伪分布式搭建
- base64的一个应用情景
- · HTML使用Viewport
- background新增的N个强悍功能!!!
- R读取excel文件乱码 read.xlsx() 解决方法
- SpriteBuilder切换解决方案以及CCB的修改与保存
- YApi二次开发环境部署
- 放球游戏B
- MT【199】映射的个数
- 任务调度的几种Java实现
- $data[$i++]+=2;不等于$data[$i++]=$data[$i++]+2;
- 【linux】Centos下登陆mysql报错#1045 - Access denied for user 'root'@'localhost' (using password: NO)
热门文章
- 前端重定向,index.html文件被浏览器缓存,导致整个应用都是旧的
- spark读写Oracle、hive的艰辛之路(一)
- Mybatis技术一数据库连接池配置(druid)
- Linux 防火墙 | Linux 服务器如何开放端口 配置防火墙
- LeetCode 1197. Minimum Knight Moves
- kuma kong 团队开发的可视化&;&;安全的service mesh
- ZROI 2020WC集训训练赛 Day4
- SQL on Hadoop技术综述
- 暑假gosh计划
- 【Beta阶段】第十次Scrum Meeting