第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)

2025-12-29
| 28页
| 233人阅读
| 4人下载
精品

资源信息

学段 小学
学科 信息科技
教材版本 小学信息科技人教版五年级全一册
年级 五年级
章节 第19课 冒泡排序齐体验(2)
类型 课件
知识点 数据的有序排列
使用场景 同步教学-新授课
学年 2026-2027
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 PPTX
文件大小 51.30 MB
发布时间 2025-12-29
更新时间 2025-12-29
作者 Dorisvv老师
品牌系列 上好课·上好课
审核时间 2025-12-29
下载链接 https://m.zxxk.com/soft/55684953.html
价格 3.50储值(1储值=1元)
来源 学科网

内容正文:

第5单元 把数据排列有序 冒泡排序齐体验(2) 第19课 人教版·五年级 学习目标 01 课堂导入 02 新知探究 03 知识总结 04 智慧挑战 05 兴趣园地 06 目录 CONTENTS 2 PART 1 学习目标 进一步认识冒泡排序算法,能够对一组数据进行排序过程分析。 学习目标 能够用程序验证排序算法,观察数据的排序过程,培养用算法解决问题的意识。 PART 2 课堂导入 课堂导入 上一课我们通过“排队”活动,体验了冒泡排序的算法步骤,下面通过对数据进行排序,分析冒泡排序的过程,并利用程序进行验证与实现。  冒泡排序 PART 3 新知探求 新知探究 学习活动1 活动1:冒泡排序的过程分析 新知探究 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 利用冒泡排序算法,把最大数排列到最后(最右侧) 新知探究 第 1 步:比较第一个数和第二个数 7 > 5,交换位置 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 新知探究 第 2 步:比较第二个数和第三个数 7 < 9,不交换位置 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 新知探究 第 3 步:比较第三个数和第四个数 9 > 3,交换位置 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 新知探究 第 4 步:比较第四个数和第五个数 9 > 6,交换位置 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 新知探究 第 5 步:比较第五个数和第六个数 9 > 8,交换位置 学习活动1 冒泡排序的过程分析 任务1:把最大数交换到最后 新知探究 第二轮:返回最左边,在第一个至第五个数中,通过比较、交换找到它们中的最大数,把它排到第五的位置。 学习活动1 冒泡排序的过程分析 任务2:按数值从小到大排序 第一轮:把最大数交换到最后,前面已经完成。 新知探究 第三轮:返回最左边,在第一个至第四个数中,通过比较、交换找到它们中的最大数,把它排到第四的位置。 学习活动1 冒泡排序的过程分析 任务2:按数值从小到大排序 新知探究 第四轮:返回最左边,在第一个至第三个数中,通过比较、交换找到它们中的最大数,把它排到第三的位置。 学习活动1 冒泡排序的过程分析 任务2:按数值从小到大排序 第五轮:返回最左边,比较第一个和第二个数,把较大的数排到第二 的位置。 新知探究 补全流程图 第 1 轮需要比较6-1=5 次, 第 2 轮需要比较 4 次, 第 3 轮需要比较 3 次, 第 4 轮需要比较 2 次, 第 5 轮需要比较 1 次。 学习活动1 冒泡排序的过程分析 在以上排序过程中,一共进行了多少次数值比较的操作? 讨论 总的比较次数为 5+4+3+2+1=15 次 右侧数 交换两个数位置 右移 1 1 最后 1 新知探究 学习活动2 活动2:验证冒泡排序的算法 新知探究 观察、运行冒泡排序的程序,体会算法的实现。 data=[65,3,25,129,311,93,88,156,72,29,336,168,108,27] print('排序前数据:',data) n=len(data) i=0 while i<n-1: j=0 while j<n-i-1: if data[j]>data[j+1]: data[j],data[j+1]=data[j+1],data[j] j=j+1 print(f'第{i+1}轮遍历:{data}) i=i+1 print('排序后数据:',data) 学习活动2 验证冒泡排序的算法 #输出排序前数据 #完成一轮排序,进入下一轮 #获取列表数据的个数 #外层循环,控制排序的轮数 #内层循环,找到未排序数中的最小值 #如果前一个数大于后一个则交换位置 #初始化最小值的变量 #输出排序后的数据 双重 循环 PART 4 知识总结 知识总结 冒泡排序的过程分析 把最大数交换到最后 按数值从小到大排序 验证冒泡排序的算法 流程图描述冒泡排序算法 PART 5 智慧挑战 2.关于冒泡排序的特性,下面哪个说法是正确的? A. 冒泡排序在排序过程中,相等的两个数一定会交换位置 B. 冒泡排序每进行一轮,就会有一个数被放到它的最终位置 C. 无论数据原来是否部分有序,冒泡排序都需要同样多的比较次数 D. 冒泡排序比其他排序方法(如选择排序)快很多 1.小华写了以下伪代码来描述冒泡排序: 这段代码中存在一个逻辑问题,会导致什么后果? A. 永远不会交换任何元素 B. 可能会陷入死循环 C. 只能排序一次就结束 D. 排序结果总是错的 智慧挑战 智慧挑战 解析:仔细看代码:它先把交换标志设为真,然后如果发生交换又设为假。但问题在于,如果一轮中有交换,标志会被设为假;一轮结束后判断“如果交换标志为真则结束”,但既然有交换标志已是假,所以永远不会满足结束条件!即使排序已完成,程序也会一直循环下去。这就是“死循环”没发生任何交换),才提前结束。 答案:B 解析:冒泡排序的“泡泡上浮”特性:每浮上去一个泡泡(最大数),它的位置就固定了。 答案:B 设置一个交换标志为假 重复执行以下步骤直到没有发生交换: 将交换标志设为真 对每一对相邻元素比较,如果顺序错误就交换,并将交换标志设为假 如果一轮结束后交换标志为真,则提前结束 PART 6 兴趣园地 兴趣园地 “报数”排序游戏 按在 10 张卡片上分别写下一个 50 以内的自然数,随机分发给 10 位同学,然后选一位同学出来从 1 开始报数。当报的数与某张卡片上的数相同时,该同学就手持卡片站出来。继续报数,直到 50 为止,手持卡片的同学按先后顺序站成一排,这时发现,这 10 个数已经按顺序排列。 用计算机解决同一问题时,往往会有不同的算法和不同的程序实现方法。 用计算机解决排序问题时,也可以用以“报数”的方法。计算机按顺序数数,当数到的数与参与排序的某个数相同时,这个数就会被加入已排序数的队列中。 兴趣园地 for 循环语句 在 Python 中,for循环和while循环都是用来重复执行一段代码的结构 for 循环语句的基本格式: for 变量 in 序列 :   循环体 range( ) 可以用来生成一个数据序列 range( ) 的基本格式: range(开始值 , 结束值 , 步长值) while 循环语句的基本格式: while 条件: 循环体 用于已知重复次数的情况 用于未知重复次数,但满足某个条件时继续执行的情况 大多数情况下,while 循环和 for 循环两者可以互相改写,但每一种方式大都有与其相适应的应用场合。 谢谢 下节课见! Thanks! 人教版·五年级 $

资源预览图

第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
1
第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
2
第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
3
第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
4
第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
5
第19课 冒泡排序齐体验(2)(教学课件)信息科技人教版五年级下册(新教材)
6
所属专辑
相关资源
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。