冒泡法排序算法ok_第1页
冒泡法排序算法ok_第2页
冒泡法排序算法ok_第3页
冒泡法排序算法ok_第4页
冒泡法排序算法ok_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2. 教学设计上报格式教学设计格式课题冒泡法排序算法作者陆志琼工作单位南宁市第二十九中学教材分析本节教材是教育科学出版社出版的普通高中课程标准实验教材算法与程序设计第三章第四节:对数据进行排序 冒泡法排序算法。学情分析在前面的学习中,学生学习了程序设计的三种结构,理解了解析法和穷举法两个典型算法,掌握了数组的概念和应用,这为学习冒泡法排序的算法奠定了基础。冒泡法排序是程序设计中的重要算法,但不容易理解,因此本节课着重通过多种方式加深学生对冒泡法排序算法的理解。教学目标A、知识与技能:1、 理解冒泡法排序算法思想。2、 学会用冒泡法对数据排序。B、 过程与方法:通过绘制实例示意图,思考问题,PP

2、T课件分析算法,画流程图,上机编程实践,掌握冒泡法排序算法的思想和应用。C、 情感、态度与价值观:培养学生的逻辑思维能力,使学生体验自己的逻辑思维与计算机程序设计相结合的过程。培养学生对程序设计的兴趣。教学重点和难点教学重点:理解冒泡排序原理及其流程图教学难点:理解冒泡排序中的趟、次,范围的概念(即对变量n, i, j使用的理解)。教学过程教学环节教师活动预设学生行为设计意图教学环节教师活动预设学生行为设计意图新课导入同学们,排序大家并不陌生,它在生活中无处不在,比如上体育课集队要排序,由高到矮;你们是怎么排的?还有你们的考试成绩,像这样一个班的成绩要排序,你会怎样做?(学生回答)直观的少量的

3、排序我们可以用目测,如果数据量大,多的时候我们人脑无法在短时间内排出来,而电脑却可以快速准确地排出来。电脑是如何进行“排序思考“的呢?这节课我们就来学习计算机其中一种重要的排序思想:冒泡排序法。用目测;用EXCEL的排序的方法。用比较法,引起学生对计算机排序算法学习的兴趣。新课教学冒泡排序的思想:通过将相邻元素进行比较和交换,逐步将一个无序序列排列为一个有序序列。从小到大的顺序排序叫升序,反之叫降序。例:将5个元素:4,1,2,5,3从小到大进行排序。冒泡法是怎么排序的?教师板书,画出部份如教材58页的冒泡法排序示意图。请一名学生来补充完善,同时强调怎样算一趟,且每趟总是从最下面起,自下而上,

4、比较或交换相邻的两个数。把小的数往上推,象轻的泡泡往上浮起一样。思考并回答问题:1、第一趟比较多少次?第二趟比较多少次?一共比较了几趟?2、第一趟冒泡的时候它进行的是那些范围的比较?第二趟,第三趟,第四趟的范围呢?3、刚是5个数比较,如果是n个数从小到大比较呢?4、如果i为趟数,A(j):A(j-1)为两两比较的元素,每趟比较的范围中,j与n,i的关系是怎么样的?对冒泡排序法有个粗略的理解。1、 第一趟比较了4次,第二趟比较了3次,一共比较了4趟。2、 第一趟:A5:A4;A4:A3;A3:A2;A2:A1第二趟:A5:A4;A4:A3;A3:A2第三趟:A5:A4;A4:A3第四趟:A5:A

5、43、 第一趟比较n-1次,第二趟比较n-2次,依此类推,最后一趟比较1次,一共比较n-1趟。4、 j = n 至 i+1 step-1整理冒泡排序法思想:(1)将n个数按从小到大顺序进行排序,第一趟将相邻两个数比较,小的交换到上面,大的交换到下面,经n-1次比较后,最小的数被交换到最上面的位置。(2)第二趟对余下的n-1个数按上面方法比较交换,经n-2次比较后将次小的数放在第二个位置。(3)依次类推,n个数共进行n-1趟比较,在第i趟中要进行范围为n至i+1 step-1次两两比较。理清思路如何转化成流程图?和学生一起分析:用双重循环实现,外循环变量设为i,内循环变量设为j,外循环重复4趟,

6、内循环依次重复4,3,2,1次。每次进行比较的两个元素可以分别用a(j)和a(j-1)表示。具体算法如下: (1)输入5个数到数组中。 (2)从小到大把数组中的变量进行排序。for i=1 to 4 for j=5 to i+1 step -1if a(j)>a(j-1) then交换 a(j)和a(j-1) (3)输出排序后的数组。 更进一步更全面加深对冒泡排序的理解。用ppt课件,引导学生一起画出算法的流程图。在理解冒泡原理的基础上画出流程图。布置任务:根据算法流程图,编写VB代码,将5个数从小到大进行排序。基本实现冒泡排序的程序编写教师对学生的编程情况进行点评,并要求学生修改代码,

7、将5个数按从大到小的顺序进行排序。扩展任务。归纳小结冒泡法排序算法的实现过程:(1)通过不同方法输入n个数。(2)实现排序的过程:For  i=1  TO  n-1   外循环控制排序趟数为 (n-1)趟 For  j=n TO i+1 step-1内循环控制当前趟排序次数 If a(j)>a(j-1)then  交换位置t=a(j) a(j)=a(j-1)a(j-1)=tend  ifNext jNext i(3)采用不同的方法输出排好序的n个数。冒泡法排序只是计算机排序算法其中的一种。实践中,人们还设计出了交换排序、插入排序、选择排序、归并排序、基数排序等等,各种算法有其自身的特点与适用范围。希望同学们在理解这些算法的基础上,加以实践运用,设计出更好更优化的排序程序。板书设计冒泡法排序示意图,冒泡法排序流程图学生学习活动评价设计课堂随机巡堂点评教学反思一、 对冒泡排序的思想有了理解,但是当把这种算法转化为VB代码时还存在一定的困难。其中的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论