义务教育版(2024)五年级全一册第17课《选择排序轻松做》课件(共23张PPT)

资源下载
  1. 二一教育资源

义务教育版(2024)五年级全一册第17课《选择排序轻松做》课件(共23张PPT)

资源简介

(共23张PPT)
义务教育信息科技(2024)五年级          
第1课时
第五单元 把数据排列有序
五年级下册
第17课 选择排序轻松做
1
2
能够梳理出选择排序的基本步骤,通过补全
流程图,了解用流程图描述的选择排序算法。
了解排序数据量与算法执行次数的关系,能
够用程序验证选择排序算法。
学习目标
第17课 选择排序轻松做
排序算法有很多种,这一课学习比较简单的选择排序。下面通过对 5 个数进行排序的探究活动来学习这一内容。
第17课 课堂导入
情境回顾
  日常生活中,排序是很常见的事情,例如,把一堆水果按大小排序,把玩具球按直径大小排序,一队小朋友按身高排序,一个旅游团按年龄排序,一些动物按它们的奔跑速度排序……
  
思考
你还知道哪些场景需要排序呢?
第17课 学习活动
一 描述选择排序的算法
三 验证选择排序的算法
二 分析选择排序的过程
学习活动
  桌上有5个盒子,分别以1、2、3、4、5编号,每个盒子里装有一张卡片,卡片上写着一个大于0的数。
  请依据这些卡片上的数,把它们从大到小排序。
1
2
3
4
5
  要求:写着最大数的卡片放在1号盒子,写着第二大数的卡片放在2号盒子,以此类推。
第17课 学习活动
问题提出
一、描述选择排序的算法
在排序算法中,如何将五个无序的数进行排序呢?
1
2
3
4
5
最大数
1
2
3
4
5
次大数
第17课 学习活动
一、描述选择排序的算法
问题分析
第17课 学习活动
一、描述选择排序的算法
  第1步:用前一课所学方法,找出最大数的卡片所在盒子。
  第2步:把写着最大数的卡片与1号盒子里的卡片进行交换。
  第3步:以此类推,在2号到5号盒子里,用“找出最大数”的方法,继续查找其中最大数的卡片,找到后与对应盒子里的卡片进行交换。
基本步骤
第1步:把卡片放入盒子,已排序个数设为0。
第2步:在未排序数中找到最大数,与未排序的第一个数交换位置。
第3步:重复第2步,依次查看所有数并交换到相应的位置。
第4步:按顺序呈现5个数。
第17课 学习活动
一、描述选择排序的算法
以上操作,其实也形成了一个具有循环结构的算法。
算法描述
看懂流程图后,指出“搜索、交换位置、改变搜索范围”等操作所在的步骤。
第17课 学习活动
一、描述选择排序的算法
算法描述
二、分析选择排序的过程
1
(108)
2
(24)
3
(12)
4
(91)
5
(35)
5张卡片上有5个数,如108、24、12、91、35。运用前面所学选择排序算法,完成五个数从小到大的排序,验证算法执行的步骤,记录卡片交换的次数,填写任务单。
第17课 学习活动
任务要求
根据选择排序算法执行过程,用☆找出未排序数据中的最大值,与未排序数中最前面的数进行交换,并记录每一轮排序结果。
第17课 学习活动
排序过程分析
二、分析选择排序的过程
  分析选择排序算法每轮的执行次数。
第17课 学习活动
二、分析选择排序的过程
排序过程分析
  学习选择排序算法后,有一位同学说:“我观察一下就能把这5个数排好顺序,不必反复操作,计算机有点笨呀!”
  你认同这个说法吗?与小组同学交流你的想法。
第17课 学习活动
二、分析选择排序的过程
思考交流
  在上一课的学习中,用程序实现并验证了“找出最大数”的算法。
  找到最大数后,通过多次比较和交换,可以把列表中的数按照从大到小或从小到大的顺序排列,从而实现排序。
第17课 学习活动
算法实现
三、验证选择排序的算法
打开参考程序并运行,利用程序实现选择排序算法,把数据由大到小排序。
第17课 学习活动
程序验证
三、验证选择排序的算法
data = [64, 25, 12, 22, 11, 90, 88, 77, 55, 33] # 要排序的数据列表
n = len(data) # 获取列表数据的个数
i = 0 #设置外层循环控制变量的初始值
while i < n - 1: # 外层循环用于控制排序的轮数
max = i # 最大值变量设为当前轮数的起始值
j = i + 1 #设置内层循环控制变量的值
while j < n: # 内层循环用于找到未排序数中的最大数
if data[j] > data[max] : #如果找到的值更大就更新最大数
max = j
j = j+1
if max != i: # 如果最大数不在指定位置就交换位置
data[i], data[max] = data[max], data[i]
i = i+1 # 进入下一个数的排序
print('排序后的数:', data) # 输出排序后的列表
  大致了解程序与算法的对应关系,找到其中的循环结构。
第17课 学习活动
循环结构
三、验证选择排序的算法
  尝试修改第一行参与排序的数据个数,保存程序后再次运行,观察输出结果的变化。
第17课 学习活动
三、验证选择排序的算法
 data = [64, 25, 12, 22, 11, 90, 88, 77, 55, 33]
程序修改
   
  1.选择排序是计算机完成排序任务时常用的一种排序算法。
2.选择排序算法借助在特定范围内,寻找最大数或最小数并交换位置的方式进行排序。
3.通过探究选择排序与找出最大值或最小值之间的关系,可以了解算法的内在联系。
第17课 课堂总结
  在Python中,可以使用sorted( )函数来进行排序,编程验证与实现算法时更加简单便捷。
  打开配套资源中的参考程序,观察并运行,体会用程序实现算法的多样性,感受多途径解决问题的过程。
第17课 拓展与提升
下课啦!

展开更多......

收起↑

资源预览