论文部分内容阅读
摘要 结合数据结构教学的实际体会,论述了以学生为中心的案例式教学模式在数据结构课堂教学中的应用。实践表明:在数据结构课堂教学中应用案例式教学模式,增加了课堂教学的灵活性,提高了学生学习的主动性,取得了良好的教学效果。
关键词 数据结构 案例式教学模式 教学方法
中图分类号:G424 文献标识码:A
1 引言
《数据结构》课程是计算机学科的重要骨干基础课程,是本科教学的重中之重。作为一门重要的专业必修课程,《数据结构》课程既是对以往课程的深入和扩展,也是为将来更加深入地学习其他专业课程打下基础。课程中所学习的排序问题的算法,以及基本的线性表、树、图等数据结构,是计算机科学的基本功。B+树、Hash等高级数据结构,也是数据库、操作系统、编译原理、计算机网络等后续课程的基础。数据结构的教学深度、广度及对实践环节的要求正逐步增长,同时随着计算机应用领域的扩大,数据结构课程已逐步对通信技术和信息管理类学生开设。《数据结构》课程的学习对学生学好后续课程起着至关重要的作用,同时对培养学生思考问题、分析问题、解决问题的能力有着重要的影响。因此,教师如何能够教好,学生又怎样真正掌握《数据结构》这门课程,成为教师和学生非常关心的问题。案例式教学模式则是一种可尝试的教学方法,能调动学生学习的积极性和主动性。
2 案例式教学模式概述
案例式教学模式是1870 年哈佛商学院首创和倡导的一种模拟实验的教学方法,曾普遍应用于医学、法学、管理等学科。我国于1980年左右开始引入案例式教学,一直主要应用于部分实践性较强的法学、临床医学、市场营销等学科领域。
案例式教学模式是一种在教学过程中,扣紧教学大纲中所规定的教学目的和应完成的教学任务,结合实际项目开发的例子,在老师的引导下,对案例进行分析、讨论和实现。案例式教学模式以学生为本,充分挖掘和调动学生主动性和自主性的发挥,引导学生通过对具体案例的分析推导,运用掌握的概念知识解决实际问题。
案例式教学模式过程中,学生首先要学会收集各方面的资料和信息,学会对已有资料做各方面的分析,促使学习不断深化,在对一个问题寻找多种解答的过程中培养和形成创造性思维。案例式教学模式有利于促使学生学会学习,案例式教学告诉学生“答案不止一个”。教师通过有意识的引导,学生通过个体独立或群体合作的方式对问题做出分析和判断, 积极寻找多种答案,经过反复多次, 就会获得自主学习的方法, 使学会学习成为现实。
3 案例式教学模式的实施
教师的教学活动要始终围绕学生自主学习能力和自身业务能力提高而进行。《数据结构》课程涉及基本的理论分析方法、数据组织方法和相应的数据处理技术。既要对前期学习的软件技术进行总结提高,又要为后续专业课程提供基础。它承上启下,贯通始终,是计算机科学与技术人才素质框架中的脊梁骨。该课程的内容对于培养学生的计算思维、算法设计与分析、程序设计与实现等学科基本能力非常重要。
3.1 教学案例的设计原则
对于案例式教学而言,案例的设计是至关重要的,案例作为案例教学的基本材料,其质量对教学效果的影响至关重要,设计案例时要注意如下几点:(1)概括性:案例要涵盖课程的绝大部分知识点;(2)实践性:要求案例要和实际应用相吻合,并能被学生理解;(3)针对性:应针对学生的接受能力来选择或设计案例;(4)开放性:案例设计时可预留问题,激发学生在实践过程中进行探索、分析和创新。
3.2 教学案例的设计
在整个数据结构课程的教学过程中,有许多的知识点与一些实际运用存在着紧密的联系,如利用线性表解决图书馆的书目检索系统自动化问题;利用队列解决酒店管理系统中的客房分配问题;利用图的最小生成树解决城市铺设煤气管道的问题;利用树解决计算机与人对奕的问题;利用栈解决程序递归、程序中断的现场保护、表达式求值以及在程序编译时进行语法检查;操作系统中CPU利用队列对任务进行管理。
3.2.1 链表的应用——约瑟夫游戏
约瑟夫游戏是:每n个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免遇难。无奈,大家只得同意这种办法,并议定n个人围成一圈,由第一个人数起,依次报数,数到第m人,便把他投入大海中,然后再从他的下一个人数起,数到第m人,再将他扔进大海中,如此循环进行,直到剩下n/2个乘客为止。问哪些位置是将被扔下大海的位置。
3.2.2 栈和队列的应用——飞机场跑道模拟
栈和队列是数据结构中特殊的线性结构,在程序开发中,常常在脚本引擎、操作界面、数据判定等得到广泛应用。
设机场只有一个跑道,每个单位时间只能有一架飞机起飞或者降落。每个单位时间会有一些飞机到达机场准备降落,也有一些飞机准备起飞,这些数目是随机的。跑道的使用遵循先来先得到服务,降落优先于起飞的原则。要求输出给定时间段机场的使用情况,包括每个单位时间跑道的状态(闲置、起飞或者降落),空中等待飞机情况,地面飞机等待情况,每架飞机得到服务前等待的时间,以及模拟结束时机场的统计数字,包括降落次数,起飞次数,平均等待降落时间,平均等待起飞时间,跑道闲置率。栈以顺序结构实现,队列以链式结构实现,主要源代码如下:
程序设计中栈适合于所有具有后进先出(LIFO)特性的应用,队列适合具有先进先出特性(FIFO)的应用。许多程序设计语言都提供对递归的支持,而大多数程序设计语言运行环境所提供的函数调用机制,包括递归调用,都是由底层的运行栈支持的。
3.3教学案例分析讨论和总结
在《数据结构》的教学中,要尽力去打破学生头脑中的“平静”,激发学生思维活动的“波澜”,也就是激发学生的疑问,案例式教学模式则很好地引导学生经历生疑-—置疑-—释疑的循环往复中探求新知,发展智能的过程。
案例式教学模式中的案例分析讨论,是整个案例式教学过程中非常重要的一个环节,它强调以学生为主体,充分调动学生的参与性,引导学生挖掘自身潜力,培养学生解决问题的思维方法和能力。教师可通过具体的教学案例,先对与该案例相关的基本概念、相关知识点、编程的基本思想、编程基本方法进行说明和讲解。讲解过程中要注重引导学生围绕案例的问题去思考,分析解决问题的方法有多少种,其中哪些方法是可行的,为什么可行,哪些方法不可行,存在的问题又在哪里,组织学生利用已掌握的知识去分辩,从而做出决策和选择,达到解决问题的目的。教师在案例讨论过程中扮演的角色就是组织和指导案例讨论,营造自由宽松的讨论氛围,让学生成为真正的案例讨论的主角,不偏离案例讨论主题,真正提高学生组织数据及编写较大规模应用程序的能力。
案例讨论完毕,教师需要对整个讨论过程及时进行总结,并做出评价,表扬讨论过程中表现优秀的学生,同时指出案例涉及的理论问题及正确的解决方法,假设在原有案例的基础上加入新的限制条件,又该如何解决,从而引导学生对案例进行更加深入的思考。
案例式教学的特点是教师要与学生融合在一起,让学生和教师一起思考、讨论、争辩、解决问题,让学生感受到在整个过程中自己扮演着一个很重要的角色,提高学习的兴趣,从而进一步提高动手能力和实践技能。
3.4 教学案例效果分析
案例教学效果分析是案例式教学的最后一步。由教师和学生共同完成,教师可编写《数据结构》案例教学效果评估表,表的内容涉及学生对案例的理解程度、案例是否覆盖了课程内容、案例与实际应用是否紧密联系、实现案例的效果等,然后组织学生认真填写该评估表。教师根据评估表的结果认真总结,再结合对案例设计、展示、分析、教学过程的分析与认识,筛选、修订、增加、完善教学案例。
4 结束语
案例式教学模式在《数据结构》课程教学中的实施,充分说明以案例的形式进行教学不仅是一种教学方法,更是一种以学生为主体的教学思想。只有从课程实际出发,针对教学目标,灵活应用案例教学,使学生将课堂和书本上所学知识综合地加以运用,才能取得好的教学效果。
参考文献
[1] 谢志江.案例教学在工科教学中的应用[J].高等工程教育研究,2003(5).
[2] 陶沼灵.启发式教学方法研究综述[J].中国成人教育,2007(4).
[3] 严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2008.
[4] 杨种学.研究型教学法在数据结构课程中的应用研究[J].计算机教育,2007(2).
关键词 数据结构 案例式教学模式 教学方法
中图分类号:G424 文献标识码:A
1 引言
《数据结构》课程是计算机学科的重要骨干基础课程,是本科教学的重中之重。作为一门重要的专业必修课程,《数据结构》课程既是对以往课程的深入和扩展,也是为将来更加深入地学习其他专业课程打下基础。课程中所学习的排序问题的算法,以及基本的线性表、树、图等数据结构,是计算机科学的基本功。B+树、Hash等高级数据结构,也是数据库、操作系统、编译原理、计算机网络等后续课程的基础。数据结构的教学深度、广度及对实践环节的要求正逐步增长,同时随着计算机应用领域的扩大,数据结构课程已逐步对通信技术和信息管理类学生开设。《数据结构》课程的学习对学生学好后续课程起着至关重要的作用,同时对培养学生思考问题、分析问题、解决问题的能力有着重要的影响。因此,教师如何能够教好,学生又怎样真正掌握《数据结构》这门课程,成为教师和学生非常关心的问题。案例式教学模式则是一种可尝试的教学方法,能调动学生学习的积极性和主动性。
2 案例式教学模式概述
案例式教学模式是1870 年哈佛商学院首创和倡导的一种模拟实验的教学方法,曾普遍应用于医学、法学、管理等学科。我国于1980年左右开始引入案例式教学,一直主要应用于部分实践性较强的法学、临床医学、市场营销等学科领域。
案例式教学模式是一种在教学过程中,扣紧教学大纲中所规定的教学目的和应完成的教学任务,结合实际项目开发的例子,在老师的引导下,对案例进行分析、讨论和实现。案例式教学模式以学生为本,充分挖掘和调动学生主动性和自主性的发挥,引导学生通过对具体案例的分析推导,运用掌握的概念知识解决实际问题。
案例式教学模式过程中,学生首先要学会收集各方面的资料和信息,学会对已有资料做各方面的分析,促使学习不断深化,在对一个问题寻找多种解答的过程中培养和形成创造性思维。案例式教学模式有利于促使学生学会学习,案例式教学告诉学生“答案不止一个”。教师通过有意识的引导,学生通过个体独立或群体合作的方式对问题做出分析和判断, 积极寻找多种答案,经过反复多次, 就会获得自主学习的方法, 使学会学习成为现实。
3 案例式教学模式的实施
教师的教学活动要始终围绕学生自主学习能力和自身业务能力提高而进行。《数据结构》课程涉及基本的理论分析方法、数据组织方法和相应的数据处理技术。既要对前期学习的软件技术进行总结提高,又要为后续专业课程提供基础。它承上启下,贯通始终,是计算机科学与技术人才素质框架中的脊梁骨。该课程的内容对于培养学生的计算思维、算法设计与分析、程序设计与实现等学科基本能力非常重要。
3.1 教学案例的设计原则
对于案例式教学而言,案例的设计是至关重要的,案例作为案例教学的基本材料,其质量对教学效果的影响至关重要,设计案例时要注意如下几点:(1)概括性:案例要涵盖课程的绝大部分知识点;(2)实践性:要求案例要和实际应用相吻合,并能被学生理解;(3)针对性:应针对学生的接受能力来选择或设计案例;(4)开放性:案例设计时可预留问题,激发学生在实践过程中进行探索、分析和创新。
3.2 教学案例的设计
在整个数据结构课程的教学过程中,有许多的知识点与一些实际运用存在着紧密的联系,如利用线性表解决图书馆的书目检索系统自动化问题;利用队列解决酒店管理系统中的客房分配问题;利用图的最小生成树解决城市铺设煤气管道的问题;利用树解决计算机与人对奕的问题;利用栈解决程序递归、程序中断的现场保护、表达式求值以及在程序编译时进行语法检查;操作系统中CPU利用队列对任务进行管理。
3.2.1 链表的应用——约瑟夫游戏
约瑟夫游戏是:每n个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免遇难。无奈,大家只得同意这种办法,并议定n个人围成一圈,由第一个人数起,依次报数,数到第m人,便把他投入大海中,然后再从他的下一个人数起,数到第m人,再将他扔进大海中,如此循环进行,直到剩下n/2个乘客为止。问哪些位置是将被扔下大海的位置。
3.2.2 栈和队列的应用——飞机场跑道模拟
栈和队列是数据结构中特殊的线性结构,在程序开发中,常常在脚本引擎、操作界面、数据判定等得到广泛应用。
设机场只有一个跑道,每个单位时间只能有一架飞机起飞或者降落。每个单位时间会有一些飞机到达机场准备降落,也有一些飞机准备起飞,这些数目是随机的。跑道的使用遵循先来先得到服务,降落优先于起飞的原则。要求输出给定时间段机场的使用情况,包括每个单位时间跑道的状态(闲置、起飞或者降落),空中等待飞机情况,地面飞机等待情况,每架飞机得到服务前等待的时间,以及模拟结束时机场的统计数字,包括降落次数,起飞次数,平均等待降落时间,平均等待起飞时间,跑道闲置率。栈以顺序结构实现,队列以链式结构实现,主要源代码如下:
程序设计中栈适合于所有具有后进先出(LIFO)特性的应用,队列适合具有先进先出特性(FIFO)的应用。许多程序设计语言都提供对递归的支持,而大多数程序设计语言运行环境所提供的函数调用机制,包括递归调用,都是由底层的运行栈支持的。
3.3教学案例分析讨论和总结
在《数据结构》的教学中,要尽力去打破学生头脑中的“平静”,激发学生思维活动的“波澜”,也就是激发学生的疑问,案例式教学模式则很好地引导学生经历生疑-—置疑-—释疑的循环往复中探求新知,发展智能的过程。
案例式教学模式中的案例分析讨论,是整个案例式教学过程中非常重要的一个环节,它强调以学生为主体,充分调动学生的参与性,引导学生挖掘自身潜力,培养学生解决问题的思维方法和能力。教师可通过具体的教学案例,先对与该案例相关的基本概念、相关知识点、编程的基本思想、编程基本方法进行说明和讲解。讲解过程中要注重引导学生围绕案例的问题去思考,分析解决问题的方法有多少种,其中哪些方法是可行的,为什么可行,哪些方法不可行,存在的问题又在哪里,组织学生利用已掌握的知识去分辩,从而做出决策和选择,达到解决问题的目的。教师在案例讨论过程中扮演的角色就是组织和指导案例讨论,营造自由宽松的讨论氛围,让学生成为真正的案例讨论的主角,不偏离案例讨论主题,真正提高学生组织数据及编写较大规模应用程序的能力。
案例讨论完毕,教师需要对整个讨论过程及时进行总结,并做出评价,表扬讨论过程中表现优秀的学生,同时指出案例涉及的理论问题及正确的解决方法,假设在原有案例的基础上加入新的限制条件,又该如何解决,从而引导学生对案例进行更加深入的思考。
案例式教学的特点是教师要与学生融合在一起,让学生和教师一起思考、讨论、争辩、解决问题,让学生感受到在整个过程中自己扮演着一个很重要的角色,提高学习的兴趣,从而进一步提高动手能力和实践技能。
3.4 教学案例效果分析
案例教学效果分析是案例式教学的最后一步。由教师和学生共同完成,教师可编写《数据结构》案例教学效果评估表,表的内容涉及学生对案例的理解程度、案例是否覆盖了课程内容、案例与实际应用是否紧密联系、实现案例的效果等,然后组织学生认真填写该评估表。教师根据评估表的结果认真总结,再结合对案例设计、展示、分析、教学过程的分析与认识,筛选、修订、增加、完善教学案例。
4 结束语
案例式教学模式在《数据结构》课程教学中的实施,充分说明以案例的形式进行教学不仅是一种教学方法,更是一种以学生为主体的教学思想。只有从课程实际出发,针对教学目标,灵活应用案例教学,使学生将课堂和书本上所学知识综合地加以运用,才能取得好的教学效果。
参考文献
[1] 谢志江.案例教学在工科教学中的应用[J].高等工程教育研究,2003(5).
[2] 陶沼灵.启发式教学方法研究综述[J].中国成人教育,2007(4).
[3] 严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2008.
[4] 杨种学.研究型教学法在数据结构课程中的应用研究[J].计算机教育,2007(2).