- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《电信类专业“算法与数据结构”教学改革探索
电信类专业“算法与数据结构”教学改革探索
摘要:文章以“算法与数据结构”的课程体系为基础,从电子信息类专业“算法与数据结构”课程教学的实际情况出发,对课程的特点及存在的问题,结合专业特点整合教学内容、实践教学和动态管理等方面进行了有益的探索和改革,特别是对以案例为线索的理论和实践相结合的模式进行了实践,取得了良好的效果。
关键词:算法与数据结构;案例教学;算法可视化;能力培养
“算法与数据结构”是计算机软件编程技术的核心课程,也是电子信息类专业的软件基础课程。该课程不仅要注重提高学生对数据结构理论的理解,锻炼学生抽象思维和研究创新能力,更要注重培养学生的动手实践能力,使学生熟练掌握组织、存储和处理数据的方法,并编写出正确、清晰和高效的算法程序。本文从本院大类招生以来“算法与数据结构”课程教学的实际出发对理论教学和实践教学进行了相关探索。
一、该课程存在的问题
“数据结构”课程比较突出的特点是:[1]概念较多、理论性强、内容抽象、逻辑性强、程序复杂。教学实践中发现,学生中普遍存在概念不清的问题,学完课程后对数据结构的本质不能有清晰的认识和准确理解。主要表现在以下几个方面:觉得算法理论太抽象,逻辑性太强,难理解、难掌握、有畏惧感;内容多,概念多,学习中难以把握整体内容,学完后不知道到底学了些什么、感觉在课堂上思路跟不上,难以消化;上课算法理论听得懂,上机实验实现算法时觉得无从下手,当编程解决实际问题就感觉更难了;不知道学习算法在实际中有什么用,逐渐失去了学习兴趣;教材上的算法多,难以全部上机实现;不重视上机实验,觉得能读懂算法和书面编写算法就可以了。
以下是几个较为典型的例子:链式存储结构中的指针,定义上是指向相关类型节点的变量,在存储结构上则对应存储对象的地址;数组结构与计算机语言中的数组相混淆,数组结构是一种逻辑结构,与计算机内的表示方法无关,而计算机语言中的数组则只是一种顺序存储方法;排序中的稳定问题,不能掌握其实质,在不同比较公式(大于,大于等于或小于、小于等于)下等值关键字在排序过程中是否交换顺序。因此,在备课时就应对诸如此类易于模糊的概念和细节高度重视;讲授时要清晰地阐述和辨别,消除学生的畏惧;精心选择上机题目,让学生正确地理解概念并能在实践中灵活运用。
二、理论教学探索——结合专业特点整合课堂内容
在理论教学中,引入跟专业背景相关的实际和经典案例打破以抽象和枯燥知识点为界线的授课模式,提高学生的学习兴趣;在授课形式上采用多种表达方式,特别是制作了直观的核心算法flash动画和动态演示软件,使学生较好地理解抽象、逻辑性强的复杂程序。
1.案例教学
以前“算法与数据结构”教学是按章节安排的。首先讲解本章节的基本理论知识,然后介绍各种算法的基本实现(在不同存储形式下算法的实现形式),再分析各个算法的优缺点等。这种填鸭式的方法只注重了“教”,而忽略了“学”的方面;症结就在于学生并没有真正地参与到教学中来,教学效果不理想。
为了改善这一情况,在教学中引入案例教学法,[2,3]其核心在于:在讲授某一知识理论之前,以实际的案例作为切入点,教师围绕所提供的案例,引导学生积极思考、分析、讨论和实践,从而深刻理解问题的原理和本质。“算法与数据结构”以案例为核心的教学基本思想是:按照逻辑结构给出其相应的案例及相关预备知识;教师解释案例并引导学生理解案例;学生根据案例学习数据结构知识并解决案例。
比如:线性表中引入多项式加法和约瑟夫(joseph)问题等案例;栈与队列引入渡船调度和农夫过河案例;树和二叉树引入通信编码压缩案例;图引入学习课程的拓扑排序案例等。这些案例既能把理论知识寓于其中,又跟电子信息类的专业特点相结合,从而调动学生的主动性并培养其探究性的学习态度,切实地参与到课堂中来积极思考,以真正地掌握所学的科学技术知识,提高分析问题和解决问题的能力。
2.可视化演示关键算法
对于抽象的算法特别是关键算法演示采用flash动画和动态演示软件等可视化教学手段。可视化教学是指在计算机软件与多媒体技术的帮助下,将被感知、被想象、被推理的事物及其发展变化的形式与过程,用仿真化、模拟化、形象化、现实化的方式,在教学过程中尽量表现出来。可视化教学可以使学生直观地观察、体验、发现、干预,利用这些生动的信息化了的知识模型,培养和造就学生的认知能力与创新能力。可视化教学在数据结构算法教学过程中所表现出的优点有:[4,5]可改变传统教学方法中的枯燥乏味局面,吸引学生的注意力;它可将文字、数据、图片、影片等多种媒体动态地整合在一起;它可以让学生体会在大量不同的数据结构下,算法执行效率的差异;学生可课后利用实现算法的可视化教学软件探索算法的执行过程,培养学生个别化学习与自学的能力。
例如:讲解二叉树的查找、遍历、线索化、哈夫曼树及编码、图的拓扑排序、关键路
文档评论(0)