少儿趣味编程Scratch算法挑战《选择排序法》(教案+源文件)

2024-01-17
| 2份
| 6页
| 254人阅读
| 65人下载
普通

内容正文:

算法挑战:选择排序法 ( 今日任务: ) 今日我们来利用 scratch 进行选择排序(Selection sort)法的探究,什么是选择排序法呢? 选择排序算法的运作如下:(从前往后) 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据 元素中选出最小(或最大) 的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 排序算法即解决以下问题的算法: 输入 n 个数的序列<a1,a2,a3,...,an>。 输出 原序列的一个重排<a1*,a2*,a3*,...,an*>;,使得 a1*<=a2*<=a3*<=...<=an* 我们通过一个简单的小实例来看演示一下用来加深印象: 原始数列 第一次 第二次 第三次 第四次 第五次 第六次 第七次 经过第七次选择排序,每次都将未排序数列中的最小数字置顶; 第一次排序:1 被选择出来置于未排序数列的顶部; 第二次排序:2 和 6 调换位置, 被选择出来置于未排序数列的顶部; ( 第三次排序: 3 和 6 调换位置, 被选择出来置于未排序数列的 顶部; 第四次排序: 4 和 7 调换位置, 被选择出来置于未排序数列的 顶部; ) 第五次排序:5 已经是未排序数列中的最小值,不需要和未排序数列中其他数字调换位置; 第六次排序:6 和 7 调换位置, 被选择出来置于未排序数列的顶部; 第七次排序:7 和 8 调换位置, 被选择出来置于未排序数列的顶部; 至此选择排序结束,我们可以看到,选择排序比冒泡排序更加优化,更加高效 ( 本课重难点: ) (1)了解选择排序法的核心思想。 (2)能够通过 scratch 编程实现对一个随机数列的选择排序。 ( 任务解读 flowchart : ) ( 跟我来挑战 Follow me : ) 第一步:启动 scratch 软件; 第二步: 点击上方的“文件”→ “保存”→保存到桌面,文件名: 选择排序 →点击“保存”; (第二步很很很重要,我希望所有的学生都能养成及时保存作品的好习惯!) 第三步: 程序解读 (见下页) 主程序: 创建随机无序数列 list 子程序: 选择排序子程序: 程序运行结果: 输入数字 30 生成一个长度为 30 的随机数列,你可以检查一下, 里面有没有重复数字? 回答数字“y ” 排序结果: ( 课后思考: ) (1) 试将我的程序进行算法优化,看看能不能在我的程序基础上进一步优化一下? (2) 试想一下, 选择排序都有哪些应用呢?什么领域或者是程序设计需要用到选择排序? 试着在网上搜索一下,顺便搜索一下更加高级的排序算法! 学科网(北京)股份有限公司 $$

资源预览图

少儿趣味编程Scratch算法挑战《选择排序法》(教案+源文件)
1
少儿趣味编程Scratch算法挑战《选择排序法》(教案+源文件)
2
少儿趣味编程Scratch算法挑战《选择排序法》(教案+源文件)
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。