第四章 树和二叉树 说课教案_二叉树教案
第四章 树和二叉树 说课教案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“二叉树教案”。
第五章 树和二叉树 说课教案
姓名:仇环
单位:信息工程系
年级与科目:08级计算机应用《数据结构》 课题:树和二叉树 职称:讲师 教龄:1年
(各位老师下午好,我说课的题目是树和二叉树)
说课的内容包括: 一.教学大纲分析 二.教材分析
三、学情分析 四.教学目标
五、教学重点与难点
六、教学方法
七、教学过程
八、教学效果预测及教学后记
一、教学大纲分析:
高职高专教育的人才培养特征是高级技术应用型人才,具体到计算机专业来说,就是培养从事计算机产品生产、维修和编程和实际应用的技术人才。在计算机专业的课程体系中,《数据结构》不仅是一门重要的专业基础课程,而且是计算机程序设计重要的理论基础,更是计算机等级、专升本等考试的必考课程之一。它在整个学科体系中具有重要作用,有着不可替代的地位。
本课程的教学不仅重视学生对理论知识的理解和掌握,锻炼学生抽象思维能力和想象能力,更注重实践动手的能力,要求学生能够设计出结构清晰、可读性好、运行效率高的算法,并能够用一种或多种计算机高级程序设计语言实现。学好这门课程,对培养学生程序设计的能力、设计算法的能力和运用计算机进行数据处理的能力有着深远的意义。
其前导课程为:《C语言程序设计》或《C++语言》。
二、教材分析
本教材属于“21世纪高职高专规划教材”,这套教材主要面向高职高专院校学生。教材内容力求体现以应用为主体,强调理论知识的理解和运用,实现专科教学以实践体系及技术应用能力培养为主的目标。
1、教材特点:
本教材的特点可总结为:
(1)基础理论知识的阐述由浅入深、通俗易懂。内容的组织和编排以应用为主线,省略了一些理论推导和数学证明过程,淡化了算法的设计分析和复杂的时空分析。
(2)各章都配有应用举例,列举分析了很多实用的例子,且大多数算法都直接给出了相应的C语言程序,以便上机练习和实践。
(3)便于复习和掌握每章的重点,每章的起始处都给出了要点,并在每章结尾处给出了小结。
2、教材内容:
本书共分为8章。第一章叙述数据、数据结构、算法等基本概念。第2~6章分别讨论了线性表、栈和队列、串和数组、树和二叉树、图等的基本数据结构及其应用。第7章和第8章分别讨论了查找和排序的各种实现方法及其应用。因为此教材与我们通用的蔚学敏老师的《数据结构》(清华大学版)内容有一定的区别,所以在教材处理上参考了其他《数据结构》教材,对本教材进行了补充。我说课的内容是第五章第一节。在《数据结构》中,树这一章既是这门课程的难点也是该课程的重点。第一节的内容是对第五章内容的基础,对于第五章内容的学习有很重要的意义。
3、文献资料清单:
扩大学生的知识面并培养学生的自学能力,为学生的研究性学习和自主学习的开展提供下列文献资料清单: 《数据结构》(C语言版),严蔚敏,吴伟民,清华大学出版社。《数据结构习题集》(C语言版),严蔚敏,清华大学出版社。《数据结构》,陈雁,高等教育出版社。
三、学情分析
本人所教的学生属计算机类专业,08级计算机班共有学生46人,年龄在18-21岁之间,他们正处于自我表现意识和协作学习的愿望最强时期。拥有较多的业余时间,可利用的课外资源也比较丰富;同时拥有较强的自我意识和自我管理能力,学习目标和职业目标也比较明确,有充分的自主学习条件。
但从他们自身的理论基础而言,他们先行课的掌握不足。C语言程序设计是《数据结构》的前导课程之一。学生对它的熟悉、掌握程度,直接关系到数据结构课程的教学效果。由于C语言是学生最先接触的程序设计语言,编程思想与以往的思维方式不同,教学难度比较大,使得教学时间大部分花费在基本概念上。而学生对数组、结构体、指针这三种数据类型的认识和理解不深,甚至印象模糊,对函数、函数的参数、函数的返回值、函数调用的理解也不够,对递归及递归过程更是难以理解。但是,这些内容是数据结构课程的重要基础,在数据结构课程中使用频率很高。而且数据结构这门课理论性很强,比较抽象,学生掌握起来比较困难,因此我在教学中穿插补充了了C语言中的数组、结构体、指针,在教学过程中更是多以多种形式生动具体的讲述理论知识。
四、教学目标
对学生在知识、素质及能力方面的目标如下:
1、知识目标
(1)掌握树的各种术语,如根、叶子、父结点、兄弟、祖先、子孙等;(2)掌握双亲表示法、孩子表示法、孩子兄弟表示法;(3)掌握二叉树的定义、性质及应用。
2、素质目标
(1)工作方法:遇到问题能进行全面分析、解决;
(2)合作精神:能够与他人进行合作,具有协调工作能力和组织管理能力。
3、能力与技能要求
(1)提高学生的认知能力;
(2)培养学生自主学习和团结协作的能力;(3)阅读基本算法程序;(4)能进行算法评价。
五、教学重点与难点
1、重点
(1)树的各种术语,如根、叶子、父结点、兄弟、祖先、子孙等;(2)掌握双亲表示法、孩子表示法、孩子兄弟表示法;(3)掌握二叉树的定义、性质及应用。
2、落实方法:通过各种教学方法使抽象的概念、算法具体化。
3、难点
(1)二叉树的性质及应用;
4、突破方法:通过启发法、归纳总结等方法对二叉树的性质逐步分析、最终得到二叉树的性质。
六、教学方法
准确的目标为教学活动指明了方向,好的教学方法则为教学活动顺利进行提供了保障。在计算机教学中努力倡导“以学生为中心,以培养学生应用能力为重点”的教学思想,多种教学方法相结合,鼓励并允许学生充分参与课堂教学活动,从真正意义上实现师生互动,教学相长的良好教学关系。从激发学生兴趣入手,在课堂教学中灵活运用多种形式来展示教学内容。
本门课程理论性较强、抽象,理解起来比较困难。因此我用的教学方法多是为引起学生兴趣,激发学生积极性,使学生的思维从抽象到具体再由具体到抽象便于学生理解的方法,如启发式教学、案例法教学、画图法教学、任务驱动式教学、讨论法教学,传统教学手段与多媒体教学相结合等。
1、启发式教学
对于数据结构中的某些内容,特别是一些抽象的概念、算法,应尽可能地先从直观意义或直观解释入手,引出实例,进而分析讨论。比如介绍栈和队列以及树这些抽象的概念的时候,先列举现实生活中的一些例子,这些例子都与这些概念有着密切的关系,这样学生就很容易接受并记住这些概念。通过这样一个从特殊到一般,从具体到抽象的逐步启发过程之后,往往能够达到很好的效果。
2、示例法 本门课程理论性很强,比较抽象难以理解,对于抽象理论知识的学习学生往往会觉得空洞而枯燥,为了使教学更有针对性,我们常常结合一些具体例题。利用示例的方式,把教学内容与这些内容有机地结合起来。使学生在学习本课程的过程中,对理论知识的应用、科学研究方法与手段、本学科的前沿研究成果有所了解和掌握。
3、画图法
本课程的很多算法是通过图示来解释其过程,如果要理解算法可以把算法的每一步画成图。特别是线性表、栈和队列、树、图这些存储结构一定要多画图,以图加强理解。
4、开展讨论,培养能力
《数据结构》中基本概念、算法较多, 彼此间具有连贯性,一味单纯地讲授教学,学生往往是被动地接受知识,枯燥乏味,往往难以激发学习兴趣。因此,在课堂教学中,让学生参与教学过程,调动学生的主动性,引导学生发现问题和分析问题,让他们能够自由地、充分地、广泛地进行课堂讨论,从而达到解决问题的目的。比如,针对课程中的主要问题或疑难问题让学生们展开讨论。首先,在进行课堂讨论之前,应该确定讨论题目并提出具体要求指导学生搜集有关资料。其次,在讨论时,要鼓励他们进行独立思考,各抒己见,引导他们逐步深入地对问题进行实质性的分析。我主要控制讨论的进程,合理分配讨论的时间,并进行及时的总结,从而指导学生进一步思考。实践证明,课堂讨论可以加深学生对理论知识的理解和记忆,有助于学生养成独立思考问题、相互交流意见的习惯,从而提高他们分析和解决问题的能力。
5、传统教学手段与多媒体技术相结合多媒体技术以其多样生动的形式在计算机教学中为师生创造了一个丰富多彩的互动交际平台。作为一种新型的教学手段,多媒体教学有助于在计算机教学中帮助学生理解抽象的内容和算法。
《数据结构》中的线性表、栈等对于初学者而言,指针的操作、储存方式过于抽象;递归算法概念在生活经验中缺乏可供模拟的例子,教材在呈现数据结构概念时经常由于受到篇幅的限制,常省略算法部分细节过程,而让学生自己发挥想象力去补足;虽然,有时也会使用黑板及投影片,通过图解或举例的方式来帮助学生。但在问题或概念越复杂时,便越难以图解或举例说明。为了解决学生学习抽象概念的困扰,借助多媒体教学。利用多媒体技术教学,除了可以运用Flash 动画软件演示算法运行过程外,还可以将课前预习内容,课后复习内容用简短的语句以课件的形式表现出来,加深学生印象,督促学生认真完成任务。另外,还可以给学生播放一些成熟的优秀的视频教学软件,可以启发学生从不同老师的认识和解决问题的角度去加深理解所学内容。
6、加强实践环节,实施教学方法多样化:由于
七、教学过程
这节课把整个教学过程安排如下六个教学段:
(一)精心设计,复习检查。
(二)创设情境,导入新课。
(三)运用各种教学方法,讲授新课,并对重、难点逐个突破。
(四)讨论归纳,突出重点、难点。
(五)布置作业,延伸到下节课内容。
通过多种摸式教学,充分调动学生学习的积极性和主动性,突出学生的主体作用,并能培养发现问题、解决问题的能力和学生互助合作精神,最终达到我们预定的目标。
第一教学段,精心设计,复习检查。(3分钟)(1)栈和队列的定义、特性;(2)栈和队列空、满时的判定。
第二教学段,创设情景,导入新课。(5分钟)
通常我们会用开枝散叶也就是树来形容人类的繁衍生息,所以我从人类的族谱说起,以我们人类的族谱来说明树的基本概念及其术语。例如祖先、双亲、孩子、兄弟等等。这里主要是激发学生学习这章内容的兴趣,促进学习的主动性和积极性,便于下面内容的学习。
第三教学段,运用各种教学方法,讲授新课,并对重、难点逐个突破。(25分钟)
在这一教学段,我分为三个阶段来完成新课的教授,这三个阶段是:
第一个阶段:实例法讲树的三种存储结构——双亲表示法、孩子表示法、孩子兄弟表示法。
这个部分主要用的是实例法,以实例来解释算法及其步骤,掌握他们的示意图及其应用。
第二个阶段:以启发法引出二叉树,满二叉树,完全二叉树的定义。
这个部分我从我国的计划生育政策说起,一对夫妻最多拥有两个孩子,以树来说,也就是我们要讲的二叉树。并由此引出满二叉树、完全二叉树的定义。
第三个阶段:讲二叉树的性质及应用。
一共有三个性质:首先抛出下面这几个问题,让学生们思考:
1、在二叉树的第i层上最多有多少个结点?
2、深度为K的二叉树最多有多少个结点(K≥1)?
3、对于任意一棵二叉树BT,如果度为0的结点个数为n0,度为2的结点个数为n2,则n0和n2的关系是什么?
然后,启发他们画出图形来观察一下二叉树存在什么规律。
最后,画出一棵简单的二叉树,并对其结点规律进行总结归纳,并扩展第三个性质,由二叉树展开到一般树得出结论。
以实例来说明二叉树的性质。
第四教学段,讨论归纳,突出重点、难点。(7分钟)
对本节课内容归纳总结,突出重、难点。然后让学生自己讨论这节课所学,听取学生的意见和对重难点的掌握情况,根据他们的意见,对于他们还有疑惑的地方再着重讲述。第五教学段,布置作业,延伸到下节课内容。(2分钟)
在这一教学段,布置作业1:
作业2 :
下节课内容提示:
1、访问所有结点的这个过程叫什么?
2、一共有几种方法可以访问到所有结点?怎样访问?
板书设计
一、树的定义与术语
1、树的定义
2、祖先、孩子、双亲、子孙、兄弟、堂兄弟
3、结点:终端结点(叶子)
非终端结点
4、结点的度
5、结点的层次
6、树的度
7、树的深度
8、有序树、无序树
9、森林
二、树的存储结构 1.双亲表示法 2.孩子表示法 3.孩子兄弟表示法三、二叉树的定义
定义:二叉树 是另一种树形结构。它与树形结构的区别是:
(1)每个结点最多有两棵子树;
(2)子树有左右之分。
二叉树也可以用递归的形式定义。即:二叉树是n(n≥0)个结点的有限集合。当n=0 时,称为空二叉树;当n>0 时,有且仅有一个结点为二叉树的根,其余结点被分成两个互不相交的子集,一个作为左子集,另一个作为右子集,每个子集又是一个二叉树。
四、二叉树的性质
性质1:在二叉树的第i 层上最多有2i-1 个结点(i≥1)。
性质2:深度为K的二叉树最多有2K-1个结点(K≥1)。
性质3:对于任意一棵二叉树BT,如果度为0的结点个数为n0,度为2的结点个数为n2,则n0=n2+1。
八、教学效果预测及教学后记
教学效果预测:本节课结合教学大纲对教材和学生进行充分的分析,通过复习检查,创设情景,导入新课,运用各种教学方法,讲授新课,并对重、难点逐个突破,讨论归纳,突出重点、难点,布置作业,延伸到下节课内容的教学过程,让学生达到我们预定的知识、能力、技能、素质目标,这节课的教学效果必定显著。