《数据结构[Python语言描述]》教案第8课串(4.1-4.3).docx
《《数据结构[Python语言描述]》教案第8课串(4.1-4.3).docx》由会员分享,可在线阅读,更多相关《《数据结构[Python语言描述]》教案第8课串(4.1-4.3).docx(6页珍藏版)》请在优知文库上搜索。
1、课题第8课串(4.1-4.3)课时2课时(90min)教学目标知识目标:(1)理解串的定义。(2)掌握串的基本操作。(3)掌握串的顺序和链式两种存储结构。(4)掌握串的模式匹配算法技能目标:(1)能使用串解决实际问题(2)能使用串的模式匹配算法定位串素质目标:加强实践练习,自觉提升专业技能和职业素养教学重难点教学重点:串的基本操作、串的顺序和链式两种存储结构、串的模式匹配算法教学难点:串的顺序和链式两种存储结构、串的模式匹配算法教学方法问答法、讨论法、i并授法、实践法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤考勤【教师】使用APP进行签到【学生】班干部报请假人员及原因问题
2、导入【教师】提出以下问题:如何理解串?【学生】举手回答传授新知【教师】通过学生的回答引入要讲的知识,介绍串的定义和基本操作、串的存储结构、串的模式匹配算法4.1 串概述串是一种数据元素受限的线性表,即要求组成线性表的所有数据元素都是字符.4.1.1 串的定义串是由若干字符组成的有限序列,通常记作Slr=ZMG.为/或slr=aM42.;其中,Slr是串名;用单引号或双引号括起来的字符序列是串值,它可以是字母、数字或其他字符;n(n0)是串中字符的个数,也称为串的长度,当n=0时称为空串。通常将仅由一个或多个空格组成的串称为空白串。空串和空白串是不同的。【提示】如果单引号本身是串中的一个字符,那
3、么串可以用双引号括起来;反之,如果双引号本身是串中的一个字符,那么串可以用单引号括起来.(详见教材)串中任意连续的字符组成的子序列称为该串的子串,包含子串的串称为主串.子串在主串中第一次出现时第一个字符的位置(即该字符在串中的序号,串中首字符的序号为0,以此类推)称为该子串在主串中的下标或索引。当两个串的长度相等,并且各个对应位置的字符都相等时,称两个串是相等的。4.1.2 串的基本操作【教师】用多媒体展示“串基本操作的定义”表(详见教材),并介绍基本操作4.2 串的存储结构与线性表相同,串也有两种存储结构,一种是三序存储结构,即顺序串;另一种是链式存储结构,即链串。4.2.1 串的顺序存储一
4、顺序串【教师】随机邀请学生回答以下问题什么是串的顺序存储?【学生】聆听、思考、回答串的顺序存储是指用一组地址连续的存储单元依次存放串的字符序列。在这种存储结构中,按照预定义的大小为每个串分配一个固定长度的存储区,且这个存储区在程序运行期间不再改变,故串的顺序存储也称为串的静态存储。采用顺序存储结构的串称为顺序串。【教师】用多媒体展示“串的顺序存储结构”图片,并介绍构造方法串旧yItIhIOTTl下标012345#定义顺序串类#初始化串#构造空串#串中的数据元素#串长#以字符串构造串顺序串的构造方法如下。classSqString:def_init_(self,obj):ifobjisNone:
5、self.data=self.length=0elifisinstance(obj,str):遍历串 为串赋值 以列表构造串遍历列表 为串赋值self.length=Ien(obj)self.data=None*self.lengthforiinrange(self.length):self.datai=objielifisinstance(obj,list):self.length=Ien(obj)self.data=None*self.lengthforiinrange(self.length):self.datai=obji【教师】随机邀请学生回答以下问题顺序串的基本操作有哪些?【学生】
6、聆听、思考、回答顺序串的基本操作包括串插入、串删除、串定位和求子串等,其中最常用的操作是串定位和求子串。求子串是指返回串中从指定下标begin开始,长度为Ien的子串序列,其具体步骤如下。(1)判断参数begin和Ien是否满足条件Obegin串长和。Ien串长-begin。(2)若满足条件,则返回子串序列。【算法描述】defsubstring(self,begin,len):#求子串ifbegin=self.lengthorIenself.length-begin:raiseEXeePtiOn(参数不满足条件,)tmp=None*Ien#初始化子串foriinrange(begin,begi
7、n+len):tmpi-begin=self.datai#复制子串returnSqString(tmp).data#返回子串【教师】讲解实例41【实例4-1现有两个串Strl和str2均采用顺序存储结构,设计算法按照字典顺序(字典顺序即按字母顺序排列的方法。对于两个串来说,当其第一个字母相同时,则继续按照第二个字母在字典中的先后顺序进行比较,以此类推,直到其中一个串的字符全部比较完毕)比较两个串的大小。【问题分析】要比较strl和str2的大小,可以先比较Strl和str2共同长度范围内的对应字符;如果strl和str2共同长度范围内的对应字符均相等,则比较它们的长度。【代码实现】详见教材。4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构【Python语言描述 数据结构 Python 语言 描述 教案 课串 4.1 4.3