《数据结构[Python语言描述]》教案第18课排序(9.4-9.5).docx
《《数据结构[Python语言描述]》教案第18课排序(9.4-9.5).docx》由会员分享,可在线阅读,更多相关《《数据结构[Python语言描述]》教案第18课排序(9.4-9.5).docx(4页珍藏版)》请在三一办公上搜索。
1、课题第18课排序(949.5)课时2课时(90min)教学目标知识目标:(1)掌握选择排序的两种典型算法直接选择排序和堆排序的过程及算法实现(2)掌握归并排序的过程及算法实现技能目标:能用选择排序和归并排序算法解决实际应用中的排序问题素质目标:加强实践练习,注重学思结合、知行统一教学重难点教学重点:选择排序、归并排序教学难点:选择排序、归并排序教学方法问答法、讨论法、讲授法、实践法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】提出以下问题:什么是选择排序?【蚂思考、传授新知【教师】通过学生的回答引入要
2、讲的知识,介绍选择排序、归用F序9.4选择排序选择排序是指不断从例E序数据元素序列中选出关键字最小的数据元素,并将其按顺序放在有序序列的最后,直到整个序列完全有序。9.4.1 直接选择排序直接选择排序的基本思想是通过关键字的比较,每次从例E序数据元素序列中选出关键字最小的数据元素,将其与待排序数据元素序列的第一个数据元素交换,直到全部数据元素都有序列.1.排序过程(1)从例E序数据元素序列中选择关键字最小的数据元素,将其与第一个数据元素进行交换。(2)从剩余待排序数据元素序列中继续选择关键字最小的数据元素,将其与第二个数据元素进行交换.(3)以此类推,直到得到一个按关键字递增有序的数据元素序列
3、。【算法描述】defSelectSort(Self):#直接选择排序foriinrange(self.Ien-1):#进行n-1趟排序tmp-i#寻找关键字最小的数据元素的位置forjinrange(i+1,self.len):ifself.listj.keyself.listtmp.key:tmp=j#交换位置iftmp!=i:self.listi,self.listtmp=self.listtp,self.listi【教师】讲解实例9-5(详见教材),并介绍直接选择排序的过程2.算法分析(1)时间复杂度。直接选择排序的时间复杂度为0()(2)空间复杂度。由于直接选择排序仅使用了一个辅助变量
4、,与问题规模无关,故其空间复杂度为。(3)稳定性。直接选择排序是一种不稳定的排序算法。(详见教材)【教师】随机邀请学生回答以下问题直接选择排序有什么优缺点?【学生】聆听、思考、回答9.4.2堆排序堆排序是直接选择排序的改进,它属于树形选择排序方法。1 .堆的定义n个关键字序列/、依、公,当且仅当该序列满足如下性质时称为堆。(of2j-i)若将此序列看作一棵完全二叉树,则堆实质上是满足如下性质的完全二叉树:树中任意一个非叶子结点的关键字均小于等于或大于等于其左、右孩子结点的关键字.其中,前者称为小根堆,后者称为大根堆。2 .排序过程堆排序的基本思想是首先将待排序数据元素序列初始化为大根堆(或小根
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构【Python语言描述 数据结构 Python 语言 描述 教案 18 排序 9.4 9.5

链接地址:https://www.31ppt.com/p-7016918.html