python初级(302) 7 列表(二)冒泡排序
一、复习:
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
python初级(302) 7 列表(二)冒泡排序的更多相关文章
- python初级(302) 5 列表
		一.复习 1.函数的创建 1) def关键字 2) 函数名及后面跟随的括号 3)冒号加上函数体 2.函数的调用 函数名及后面跟随的括号 3.带一个,二个,三个参数的函数及调用 二.列表 family ... 
- python初级(302) 6 对象(二)
		一.复习 1.什么是对象 2.什么是类 3.什么是属性 4.什么是方法 5.创建一个dog类,dog的属性有颜色,方法有汪汪叫 随堂练习: class Dog: def __init__(self, ... 
- python初级(302) 3 easygui简单使用二
		一.复习 1.easygui 信息提示对话框 2.easygui 是否对话框 二.easygui其它组件 1.选择对话框:choicebox(msg, title, choices) import e ... 
- python初级(302) 6 对象(三)
		一.复习 1.什么是魔法方法? 2.什么是类的初始化函数? 二.什么是self 使用一个类可以创建多个对象实例,例如: ball1 = Ball("red", "smal ... 
- python初级(302) 2 easygui简单使用
		一.复习之前的两个练习,巩固计数循环和条件循环 1.系统生成一个随机数1到5,然后让用户的猜测,若猜对了,提示恭喜你,猜对了,否则提示,对不起,你猜错了(提示,1到5的随机数为:secret = ra ... 
- python初级(302) 1 环境搭建及简单使用
		一.安装anaconda(python环境) 1 地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=A 选择Ana ... 
- Python 初级 6 循环 (二)
		一.复习 1 for循环 for looper in [1, 2, 3, 4]: print("hello") 1) 每次循环开始,会依次把列表中的数按顺序赋值给looper,第一 ... 
- python初级(302) 6 对象(四)
		一.复习 1.什么是多态 2.复习上一节课内容 class Triangle: """ 三角形类 """ def __init__(self ... 
- python初级(302) 4 函数
		一.函数 1.函数定义: 可以完成某个工作的代码块.这是可以用来构建更大程序的一个小部分. 2.创建或定义函数要使用def关键字 3.创建一个函数 1) def 关键字 2)函数名及后面跟随的括号 3 ... 
- python初级(302) 6 对象(一)
		作业: 1.编写一个Dog类,并生成对象dog,属性包含颜色,大小,重量,可以汪汪叫,摇尾巴,跑 # -*- coding: utf-8 -*- class Dog: def __init__(sel ... 
随机推荐
- Unity 渲染教程(四):第一个光源
			将法线从物体空间转换到世界空间. 使用方向光. 计算漫反射和镜面高光反射. 实现能量守恒. 使用金属的工作流程. 利用Unity的基于物理规则渲染的算法. 这是关于渲染基础的系列教程的第四部分.前面的 ... 
- 词向量---LSA(Latent Semantic Analysis)
			举例: 矩阵分解之后,取前两维,k=2, 单词距离: 文档距离: 通过LSA分析之后计算文档间的余弦相似度,属于同一个类型文本之间的相似度很接近:在原始文档间计算相似度,效果不如LSA 当出现新的 ... 
- jmeter针对websocket协议的压测
			之前一直没有接触过websocket协议,所以一直对websocket的压测存在疑惑,在网上参考文章并不断尝试之后,终于有所得:第一次用jmeter的websoket插件,用的ws非加密协议,请求都能 ... 
- idea忽略.iml文件
			.iml 和 eclipse中的.classpath,.project都属于开发工具配置文件, 也就是在项目导入ide的过程中生成的配置文件,每个人开发环境是不一样的,所以这个文件没必要提交. 而且如 ... 
- ovirt常用后台维护命令
			以下命令是在node主机上操作 查看hosted-engine虚机的状态 hosted-engine --vm-status 启动hosted-engine虚机 hosted-engine --vm- ... 
- 火鸡堂 对 基于云的胜利冲锋队 为了交项目干杯 的 Beta 产品测试报告
			基于云的胜利冲锋队 第一次上手 第一次上手体验感觉如何?能否正常运行? 不错,学生端和老师端各功能很清晰,大部分功能正常运行,但添加班级之类的部分功能页面暂时无响应 看到千帆竞发图泪流满面,图表中有各 ... 
- easyui datebox 只显示日期,本文为转载,稍加改动
			var DateBoxHandler = {}; DateBoxHandler.onlyShowMonth = function(id) { function padding(v) {if (v &l ... 
- 前端性能----从输入URL开始到返回数据的中间经历过程
			这是一个古老的问题,即我们输入URL后按下回车到网页测呈现都发生了什么? 首先来看一张图: 表示了数据从源端到目的端的封装和拆解过程 预处理URL URL格式: 以http为例: http://ww ... 
- Spring,Spring MVC,Spring Boot 三者比较
			Spring,Spring MVC,Spring Boot 三者比较 Spring 框架就像一个家族,有众多衍生产品例如 boot.security.jpa等等.但他们的基础都是Spring 的 io ... 
- cpu绘图的本质:生成图片的二进制(数字)信息
			计算机中图片是用二进制数据表达的. 
