论文部分内容阅读
摘 要: 《数据结构》是计算机专业一门重要的基础课,其理论性强,概念多,具有相当的难度和抽象性,而非计算机专业学生学习《数据结构》又有一些特殊的困难,传统的授课方式会影响教学效果。在授课过程中引入相关案例可以将实际与理论知识相结合,避免以抽象概念来描述数据结构及其算法,可以降低知识点难度,提高学生学习兴趣。
关键词: 非计算机专业 《数据结构》 案例教学法
一、引言
《数据结构》课程是计算机相关专业的一门核心基础课程,具有内容广、概念多、专业性、理论性强、具有很强的抽象性等特点。即使对于计算机专业而言,也是一门公认难学难教的课程。近年来,由于专业需求,一些非计算机专业也相继开设《数据结构》课程,目标为提高学生对数据的分析、组织、处理能力,培养学生的程序设计能力。以往针对《数据结构》课程的教学研究主要针对计算机及其相关专业展开,针对非计算机专业则相对较少。而非计算机专业学生由于程序设计基础较差,课时较少,学习起来难度更大。
在非计算机专业《数据结构》课程中引入案例教学法,把传统的教学方法与案例教学相结合,避免以抽象概念来描述数据结构及其算法,降低知识点本身的难度,可以很好地调动学生学习的积极性,从而达到提高教学质量的目的。
二、非计算机专业《数据结构》教学的现状及存在问题
1.学生学习基础掌握不牢
程序设计基础是《数据结构》的先导课程之一,学生对其掌握程度直接关系到《数据结构》课程的教学效果。大多数高校开设的都是《C语言程序设计》,非计算机专业的学生由于专业安排,《C语言程序设计》课程的课时较少,学习的内容也较浅,学习的重点是基础知识和几种程序结构,而对《数据结构》课程中频繁用到的函数、递归、指针、结构体等知识学习较少、理解较浅,这使得教师的教学难度加大,也极大地阻碍了学生对各种数据结构和算法等知识点的理解和应用,从而失去了对《数据结构》课程学习的兴趣。
2.课时不足
非计算机专业通常将《数据结构》作为主要选修课而非专业基础课开设,无论是理论授课还是实验课时,都相对较少。这使得教师为了赶进度,没有办法将相关知识点深入阐述、帮助学生加深理解,而只能是蜻蜓点水般地作简单介绍。
3.教材内容过于抽象
《数据结构》现有教材大多是针对计算机专业而编写,使非计算机专业学生常觉得教材内容多,偏重理论,缺乏生动有趣、通俗易懂的案例,而老师在教学过程中主要注重理论讲解,与现实应用联系较少,不能很好地把理论与现实应用联系起来,导致学生认为该课程枯燥难懂,不能激起学生学习的兴趣[1][2]。
另外,大部分教材使用类C语言或伪码编写算法,不能够直接上机使用,需要另行编写调试C程序,这对非计算机专业学生而言进一步加大了其学习的难度,加剧了畏惧情绪,学习兴趣也进一步降低。
三、在《数据结构》课程教学中应用案例教学法
所谓案例教学法,就是教师根据教学目的和教学内容的需要,运用典型案例,创设情境,让学生进入角色,积极思考主动探索,以提高他们运用所学知识分析、解决问题能力的一种教学方法[3]。
在《数据结构》课程的教学过程中,我们发现,学生刚接触该课程时感觉很难,虽然在态度上对之很重视,但学习起来觉得很茫然;当课程逐渐深入时,因其理论性强和抽象性,会慢慢失去学习的兴趣。
为了防止学生的学习兴趣丧失,老师在课堂教学中,需注意理论联系实际,根据教学内容设计一些生动易懂的案例,将相关的知识点用一个一个案例来概括,把一些枯燥的理论知识融合在具体的案例中,并尽量贴近现实生活,这样可以让学生了解所学的知识在现实生活中的具体应用,以激发学生的学习兴趣。
在设计案例时需要注意:一要根据教学内容选择案例,案例中应该涉及学生已学过的或即将学到的知识;二要根据非计算机专业学生的特点,尽量选取最基础、最本质的东西作为教学内容。
比如在讲解线性表时,可以编写一个“学生基本信息管理系统”作为案例,详细讲解在这个系统中所有学生都是一种线性关系,而建立这个“学生基本信息管理系统”的基本操作:新建、录入、插入、删除、修改、输出学生信息等,以及诸如按姓名查找、按成绩排序等都是讲解线性表的基本内容。而在上機实践课上,当这个真实生活中的案例在计算机上实现时,会给学生带来很大的成就感,进一步激发学生学习的兴趣:原来学习数据结构有这么大的用处。
在介绍栈时,可以“玻璃杯与兵乓球”的游戏作为案例,引入栈的概念,分析栈的特点。乒乓球的直径和玻璃杯口的直径一致,可以把玻璃杯看做栈,把乒乓球看做是栈中的元素,可以连续向空的玻璃杯中放入多个乒乓球,但如果要取出乒乓球,最先取出的是最上面的乒乓球,最后取出的是最下面(最先放入)的乒乓球,从而让学生理解栈是一种操作受限的线性表、进栈和出栈操作,以及栈的后进先出的特点。然后进一步介绍栈在现实生活中的应用:火车的调度。
在介绍队列时,可以以现实生活的“排队等待”为案例,引入队列的概念及特点。
再例如在介绍树时,可以“家谱”作为案例,让学生理解层次结构的特点。
在讲解图结构时,可以一个“校园导游咨询”作为图结构的驱动案例。首先,设计校园的各个地点,由此引出图及其相关概念;其次需要为学生提供校园中任意地点的位置、简介、开放时间等的查询,由此引出图的遍历;最后提供图中任意地点的路径查询,从某地点到达另外地点的路径查询,引出最短路径及最小生成树等概念。
而在讲解查找时,可以图书馆查阅书籍的方法为案例,使学生掌握不同的查找方法,并主动比较其性能[4]。
四、结语
在非计算机专业《数据结构》教学中,通过一系列案例的分析和讨论,学生学习到的就不再是枯燥乏味的理论知识,而是一个一个在现实生活中会遇到的实际问题。这样可以很好地将理论和实际结合起来,而学生在上机实验完成程序后,当枯燥的算法变为生动的实例后,会非常有成就感,促使他们有更大的兴趣去学习新的知识[5]。
参考文献:
[1]吕璐等.《数据结构》课程教学方法探讨[J].黄石理工学院学报,2008-12-15.
[2]邓立苗等.新的教学环境下《数据结构》教学方法的探讨[J].电脑学习,2009-04-01.
[3]董黎明.关于案例教学的思考[J].武警学院学报,2003-08-25.
[4]吴聪聪等。案例驱动法在《数据结构》教学中的应用[J].电脑知识与技术,2010-9-26.
[5]董黎明.关于案例教学的思考[J].武警学院学报,2003-08-25.
关键词: 非计算机专业 《数据结构》 案例教学法
一、引言
《数据结构》课程是计算机相关专业的一门核心基础课程,具有内容广、概念多、专业性、理论性强、具有很强的抽象性等特点。即使对于计算机专业而言,也是一门公认难学难教的课程。近年来,由于专业需求,一些非计算机专业也相继开设《数据结构》课程,目标为提高学生对数据的分析、组织、处理能力,培养学生的程序设计能力。以往针对《数据结构》课程的教学研究主要针对计算机及其相关专业展开,针对非计算机专业则相对较少。而非计算机专业学生由于程序设计基础较差,课时较少,学习起来难度更大。
在非计算机专业《数据结构》课程中引入案例教学法,把传统的教学方法与案例教学相结合,避免以抽象概念来描述数据结构及其算法,降低知识点本身的难度,可以很好地调动学生学习的积极性,从而达到提高教学质量的目的。
二、非计算机专业《数据结构》教学的现状及存在问题
1.学生学习基础掌握不牢
程序设计基础是《数据结构》的先导课程之一,学生对其掌握程度直接关系到《数据结构》课程的教学效果。大多数高校开设的都是《C语言程序设计》,非计算机专业的学生由于专业安排,《C语言程序设计》课程的课时较少,学习的内容也较浅,学习的重点是基础知识和几种程序结构,而对《数据结构》课程中频繁用到的函数、递归、指针、结构体等知识学习较少、理解较浅,这使得教师的教学难度加大,也极大地阻碍了学生对各种数据结构和算法等知识点的理解和应用,从而失去了对《数据结构》课程学习的兴趣。
2.课时不足
非计算机专业通常将《数据结构》作为主要选修课而非专业基础课开设,无论是理论授课还是实验课时,都相对较少。这使得教师为了赶进度,没有办法将相关知识点深入阐述、帮助学生加深理解,而只能是蜻蜓点水般地作简单介绍。
3.教材内容过于抽象
《数据结构》现有教材大多是针对计算机专业而编写,使非计算机专业学生常觉得教材内容多,偏重理论,缺乏生动有趣、通俗易懂的案例,而老师在教学过程中主要注重理论讲解,与现实应用联系较少,不能很好地把理论与现实应用联系起来,导致学生认为该课程枯燥难懂,不能激起学生学习的兴趣[1][2]。
另外,大部分教材使用类C语言或伪码编写算法,不能够直接上机使用,需要另行编写调试C程序,这对非计算机专业学生而言进一步加大了其学习的难度,加剧了畏惧情绪,学习兴趣也进一步降低。
三、在《数据结构》课程教学中应用案例教学法
所谓案例教学法,就是教师根据教学目的和教学内容的需要,运用典型案例,创设情境,让学生进入角色,积极思考主动探索,以提高他们运用所学知识分析、解决问题能力的一种教学方法[3]。
在《数据结构》课程的教学过程中,我们发现,学生刚接触该课程时感觉很难,虽然在态度上对之很重视,但学习起来觉得很茫然;当课程逐渐深入时,因其理论性强和抽象性,会慢慢失去学习的兴趣。
为了防止学生的学习兴趣丧失,老师在课堂教学中,需注意理论联系实际,根据教学内容设计一些生动易懂的案例,将相关的知识点用一个一个案例来概括,把一些枯燥的理论知识融合在具体的案例中,并尽量贴近现实生活,这样可以让学生了解所学的知识在现实生活中的具体应用,以激发学生的学习兴趣。
在设计案例时需要注意:一要根据教学内容选择案例,案例中应该涉及学生已学过的或即将学到的知识;二要根据非计算机专业学生的特点,尽量选取最基础、最本质的东西作为教学内容。
比如在讲解线性表时,可以编写一个“学生基本信息管理系统”作为案例,详细讲解在这个系统中所有学生都是一种线性关系,而建立这个“学生基本信息管理系统”的基本操作:新建、录入、插入、删除、修改、输出学生信息等,以及诸如按姓名查找、按成绩排序等都是讲解线性表的基本内容。而在上機实践课上,当这个真实生活中的案例在计算机上实现时,会给学生带来很大的成就感,进一步激发学生学习的兴趣:原来学习数据结构有这么大的用处。
在介绍栈时,可以“玻璃杯与兵乓球”的游戏作为案例,引入栈的概念,分析栈的特点。乒乓球的直径和玻璃杯口的直径一致,可以把玻璃杯看做栈,把乒乓球看做是栈中的元素,可以连续向空的玻璃杯中放入多个乒乓球,但如果要取出乒乓球,最先取出的是最上面的乒乓球,最后取出的是最下面(最先放入)的乒乓球,从而让学生理解栈是一种操作受限的线性表、进栈和出栈操作,以及栈的后进先出的特点。然后进一步介绍栈在现实生活中的应用:火车的调度。
在介绍队列时,可以以现实生活的“排队等待”为案例,引入队列的概念及特点。
再例如在介绍树时,可以“家谱”作为案例,让学生理解层次结构的特点。
在讲解图结构时,可以一个“校园导游咨询”作为图结构的驱动案例。首先,设计校园的各个地点,由此引出图及其相关概念;其次需要为学生提供校园中任意地点的位置、简介、开放时间等的查询,由此引出图的遍历;最后提供图中任意地点的路径查询,从某地点到达另外地点的路径查询,引出最短路径及最小生成树等概念。
而在讲解查找时,可以图书馆查阅书籍的方法为案例,使学生掌握不同的查找方法,并主动比较其性能[4]。
四、结语
在非计算机专业《数据结构》教学中,通过一系列案例的分析和讨论,学生学习到的就不再是枯燥乏味的理论知识,而是一个一个在现实生活中会遇到的实际问题。这样可以很好地将理论和实际结合起来,而学生在上机实验完成程序后,当枯燥的算法变为生动的实例后,会非常有成就感,促使他们有更大的兴趣去学习新的知识[5]。
参考文献:
[1]吕璐等.《数据结构》课程教学方法探讨[J].黄石理工学院学报,2008-12-15.
[2]邓立苗等.新的教学环境下《数据结构》教学方法的探讨[J].电脑学习,2009-04-01.
[3]董黎明.关于案例教学的思考[J].武警学院学报,2003-08-25.
[4]吴聪聪等。案例驱动法在《数据结构》教学中的应用[J].电脑知识与技术,2010-9-26.
[5]董黎明.关于案例教学的思考[J].武警学院学报,2003-08-25.