正在加载图片...
针的修改顺序。然后给出一个修改后的案例,讨论按照教材指针的修改顺序是否能达成目标。 讨论过程中会发现,插入操作失败,因为出现了结点地址丢失,也就是断链的情况。进而总 结为何会出现断链以及如何避免断链。本知识点的教学也应当同上机实验结合起来进行。 3.二叉树的遍历和重构 该知识点属于本章重点和难点内容。二叉树是学生接触到的第一种非线性结构,其存储 方式主要采用链式存储模式,常见的是二叉链表和三叉链表。二叉树的二叉链表存储以及在 这种存储模式上的遍历操作是本部分的重点:其中,二叉链表的三种遍历方式以及基于遍历 序列的二叉树重构是本部分的难点,重点引导学生体会在二叉树算法中体现出来的递归算法 特征。 解决办法:本知识点教学过程中强调两个核心,一是遍历算法中体现出来的递归思想, 二是二叉树重构条件。递归算法的灌输可以从二叉树的定义开始,为了帮助学生理解递归的 核心,可以将经典例子汉诺塔的递归算法作为实例。有了递归算法之后,二叉树的遍历算法 变得非常简单和直观,但是要强调递归执行的复杂性,并且提醒学生留意递归的收敛,避免 出现无穷递归。关于递归的执行,可以带领学生以一个简单的二叉树的遍历来进行分析。关 于二叉树的重构,可以通过设问讨论的方式进行。再得到一棵二叉树的三种遍历序列之后, 提问学生,利用哪两种遍历序列可以重构二叉树,进而分析原因。最终得出结论,先序和后 序遍历序列中可以识别出树的根节点,而中序遍历序列可以利用根结点将树划分为两个子 树,在上述思想的基础上,在对子树利用递归分析,就可以重构二叉树。 4.常见排序算法和性能评价 该知识点属于本章重点和难点内容。查找和排序属于数据结构部分必须掌握的重要内 容,其中排序算法比较多,部分排序算法比较复杂,学生掌握起来有一定的难度,比如快速 排序、归并排序,都需要一定的技巧,也属于本知识点的难点。 解决办法:本部分涉及到的排序算法较多,而且比较复杂。教学过程中,首先以一个具 体无序序列实例来讲解排序的思想,从最简单的排序方式开始。在讲解清楚各种排序方式的 思想后,再介绍排序算法。本部分涉及到的算法应当同实验结合起来,确保学生上机实验之 前已经深刻理解算法精髓。 三、教学设计(如何讲授本章内容,尤其是重点、难点内容的设计、构思) 1.案例教学 链式结构的指针域需要重点讲授,同指针相关的内容需要进行深化和拓宽。这一部分要针的修改顺序。然后给出一个修改后的案例,讨论按照教材指针的修改顺序是否能达成目标。 讨论过程中会发现,插入操作失败,因为出现了结点地址丢失,也就是断链的情况。进而总 结为何会出现断链以及如何避免断链。本知识点的教学也应当同上机实验结合起来进行。 3. 二叉树的遍历和重构 该知识点属于本章重点和难点内容。二叉树是学生接触到的第一种非线性结构,其存储 方式主要采用链式存储模式,常见的是二叉链表和三叉链表。二叉树的二叉链表存储以及在 这种存储模式上的遍历操作是本部分的重点;其中,二叉链表的三种遍历方式以及基于遍历 序列的二叉树重构是本部分的难点,重点引导学生体会在二叉树算法中体现出来的递归算法 特征。 解决办法:本知识点教学过程中强调两个核心,一是遍历算法中体现出来的递归思想, 二是二叉树重构条件。递归算法的灌输可以从二叉树的定义开始,为了帮助学生理解递归的 核心,可以将经典例子汉诺塔的递归算法作为实例。有了递归算法之后,二叉树的遍历算法 变得非常简单和直观,但是要强调递归执行的复杂性,并且提醒学生留意递归的收敛,避免 出现无穷递归。关于递归的执行,可以带领学生以一个简单的二叉树的遍历来进行分析。关 于二叉树的重构,可以通过设问讨论的方式进行。再得到一棵二叉树的三种遍历序列之后, 提问学生,利用哪两种遍历序列可以重构二叉树,进而分析原因。最终得出结论,先序和后 序遍历序列中可以识别出树的根节点,而中序遍历序列可以利用根结点将树划分为两个子 树,在上述思想的基础上,在对子树利用递归分析,就可以重构二叉树。 4. 常见排序算法和性能评价 该知识点属于本章重点和难点内容。查找和排序属于数据结构部分必须掌握的重要内 容,其中排序算法比较多,部分排序算法比较复杂,学生掌握起来有一定的难度,比如快速 排序、归并排序,都需要一定的技巧,也属于本知识点的难点。 解决办法:本部分涉及到的排序算法较多,而且比较复杂。教学过程中,首先以一个具 体无序序列实例来讲解排序的思想,从最简单的排序方式开始。在讲解清楚各种排序方式的 思想后,再介绍排序算法。本部分涉及到的算法应当同实验结合起来,确保学生上机实验之 前已经深刻理解算法精髓。 三、教学设计(如何讲授本章内容,尤其是重点、难点内容的设计、构思) 1. 案例教学 链式结构的指针域需要重点讲授,同指针相关的内容需要进行深化和拓宽。这一部分要
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有