内容正文:
将大的放到合适位置
1
1
能够运行和调试插入排序程序
2
3
理解插入排序的原理
目录
CONTENTS
能够制作自己的排序程序
分块查找算法(选做)
2
复习导入
3
生活中的插入排序
1
4
回想一下打牌时抓牌的情景,如下图按花色和大小插入恰当的位置抓完牌后,手中的牌是有序的。
生活中的插入排序
插入排序
2
6
插入排序
插入排序算法是从数据集合的左侧开始依次对数据进行排序。将第1个数固定,从右侧未排序数据中依次取出数据,插入到已排序数据中合适的位置上。
第一轮排序:
一组数字“8、6、2、12、4”需要从小到大进行排序。
插入排序
8 6 2 12 4
8 6 2 12 4
比较大小8>6
6 8 2 12 4
交换
第二轮排序:
插入排序
6 8 2 12 4
比较大小8>2
6 2 8 12 4
6 2 8 12 4
比较大小6>2
2 6 8 12 4
交换
交换
第三轮排序:
2 6 8 12 4
比较大小8<12
2 6 8 12 4
2 6 8 12 4
比较大小6<8
2 6 8 12 4
不交换
不交换
2 6 8 12 4
比较大小2<6
2 6 8 12 4
不交换
第四轮排序:
2 6 8 12 4
比较大小12<4
2 6 8 4 12
2 6 8 4 12
比较大小8>4
2 6 4 8 12
交换
交换
2 6 4 8 12
比较大小6>4
2 4 6 8 12
交换
2 4 6 8 12
比较大小2<4
2 4 6 8 12
不交换
插入排序
你能用简洁的语言描述这三种排序算法吗?
排序算法 我对三种排序算法的描述
选择排序
冒泡排序
插入排序
从未排序数据中寻找最大值或最小值,用它和未排序数据的最左边数字进行交换
不断地比较和交换相邻两个数据的大小,使最大值或最小值慢慢“浮”到最左边
将第一个数固定,从未排序数据中依次取出数据,插入到已排序数据中的合适位置上
体验插入排序
3
13
体验插入排序
体验插入排序
用程序来实现插入排序可以分成3步,以从大到小排序为例。
① 先从未排序的数字中取出一个数字,放入已排序列表,然后准备开始排序;
体验插入排序
②每一轮都从未排序的数字中取出一个数,从后往前,将“取出的数”和“已排序列表中的数”逐个进行比较;
体验插入排序
③重复第②步的过程,直到排完所有数字。
运行给出的示例程序,使用插入排序对数据列表进行排序。仔细观察程序每轮排序的结果,看一看每轮排序后的结果与自己预想的是否一致?
体验插入排序
18
全班体测数据排序
4
19
夹跳棋个数排序
小清整理了班级同学们的练习成绩和体测数据。请你尝试制作一个排序程序,根据趣味运动会的项目挑选合适的数据维度,使用计算机排序算法为数据排序,推选出最适合参赛的选手。
任务一:将运动项目、需排序的数据维度和你打算使用的排序算法整理在下表中。
筷子夹跳棋
颠乒乓球
计时投篮
吹气球
筷子夹跳棋个数
颠乒乓球个数
计时投篮个数
肺活量
插入排序
插入排序
插入排序
插入排序
任务二:使用思维导图和流程图等工具,设计自己的排序程序界面及功能,并编写程序。
20
生活中的插入排序
插入排序
全班体测数据排序
将大的放到合适位置
体验插入排序
21
谢谢观看
22
Multimedia Cloud Transcode (cloud.baidu.com)
Multimedia Cloud Transcode (cloud.baidu.com)
Content Adaptive Encoding 3.0
$$