数据结构课程设计总结范例(实用3篇)
【导言】此例“数据结构课程设计总结范例(实用3篇)”的文档资料由阿拉题库网友为您分享整理,以供您学习参考之用,希望这篇资料对您有所帮助,喜欢就复制下载支持吧!
数据结构课程设计总结1
关键词:课程内容;结构分析;教师素质;学习能力
随着我国综合实力的不断增强和国际地位的不断提升,大学计算机教育的重要性逐渐突显出来,而计算机教育中数据结构课程则是重中之重。进入21世纪,计算机科学与技术及相关的专业一度成为热门专业,而数据结构是该学科的基础课程,要想掌握良好的计算机技术就一定要打好基础,学好数据结构课程。然而,数据结构课程内容较为抽象、复杂,具有动态性,学生在学习的过程中感觉无从下手,到实践的过程中更是由于没有理论知识的支持而感到疑惑重重。因此,培养学生的自信心,激发学生的热情便成为当务之急。笔者将在下文中结合自己几年的执教经验对数据结构课程进行探究,不足之处,还请指教。
一、数据课程内容及体系结构分析
数据结构是计算机科学与应用专业的基础课程,该课程内容主要是介绍了软件设计中最常见的数据结构及其储存结构,本课程的难点是数据组织方面的动态储存结构及递归技术。笔者认为,可以从以下几个方面进行教学:
1.做到学以致用
在进行数据课程教学的过程中,教师可以结合实例向学生展示整个课程的内容及每个章节的重难点知识,最大限度地激发学生的学习热情和积极性,这样不仅可以使学生对本课程有个大致的了解,使学生很好地掌握理论知识,还可以培养学生运用理论知识解决实际问题的能力,真正做到学以致用。
2.为学生总结知识框架
教师要采用科学的方法对教学内容进行整理,为学生总结知识框架,这样便于学生自主学习。知识框架要由多个相互关联的模块构成,便于课程中多种知识的组合。
3.进行严格的训练
由于数据课程知识较为抽象,对于一些难度较大,较难理解的知识一定要进行及时、严格的训练,这样可以很好地培养学生严谨的学习态度,在试题之中,教师要适当地考查学生对知识的深入理解情况,便于掌握学生的学习情况。
4.对疑难点知识的补充教学及总结
针对数据课程中某些重难点知识,教师一定要进行深入地剖析,并且可以根据实际情况对教材之中的原理部分进行转化便于学生接受,还可以对教材中未提及的简易算法等进行补充,使学生便于掌握、理解。
5.注重对学生能力的培养
数据课程具有较强的实践性,在理论教学的过程中隐含了许多重要的技术知识,但教材中多是一笔带过,使学生很难理解。针对这种情况,教师一定要对教材中没有展开讨论的重点技能性知识进行解析,以培养学生解决问题的能力。
二、解析课程设计对计算机教师的要求
课程设计主要是针对学生的学习能力进行的,教师一定要根据学生的实际情况及兴趣爱好进行,要注意课题的难度,尽量控制在通过学生的努力可以完成的范围内,既不要太难,也不要过于简单。需要注意的是,计算机教师一定要对整个过程进行掌控,如果发现这个课题较难,学生花费了很长的时间也不能解决,教师就是及时进行指导,帮助学生渡过难关。因为,如果经过长时间的思考还没有解决问题,学生的兴趣和信心都会在一定程度上减弱,最终会出现消极心理,这非常不利于学生的发展;不仅如此,还要对数据结构课程的设计进行严格的验收,严谨的对待学生的成绩评定。在设计完成后,教师要进行现场评定,要充分地检查各种数据,明确指出设计之中存在的缺陷,以便于学生形成良好的治学态度,此外,对于学生设计中的闪光点,教师也要及时肯定,不吝啬鼓励、表扬的语言,使学生感受到教师对其的期望感,激发起学生的学习动力。
通过对上文的论述可知,对数据结构课程设计进行探究具有重要的意义,对我国整体高校计算机教育事业的发展是大有裨益的。数据结构课程作为计算机技术与应用专业的基础课程,对该专业学生的未来发展起到很大的作用,我们数据课程教师任重而道远。尽管在当前的数据结构教育中还存在很多问题,在未来探索的道路上更是阻碍重重,但我坚信,天道酬勤,只要我们广大高校计算机教育工作者恪尽职守,无私奉献,不断对数据结构课程进行探究,一定能够有效缓解我国当前的教育现状,为祖国培养出一批又批的综合素质较高的计算机专业人才,最终为祖国的发展和社会的进步奉献自己的一份力量。
参考文献:
[1]任雪萍,王立波,赵葆华。融入PIC-CDIO理念的“数据结构”课程教学改革[J].计算机教育,2012(12).
[2]查建中。面向经济全球化的工程教育改革战略:兼谈CDIO工程教育模式实施[J].计算机教育,2010(11).
[3]殷旭,胡景繁,张红。基于CDIO教育模式学生学习评估方法的探索[J].高教论坛,2010(2).
博观而约取,厚积而薄发。山草香为大家分享的3篇数据结构课程设计总结范文就到这里了,希望在数据结构课程设计报告的写作方面给予您相应的帮助。
数据结构课程设计总结2
关键词:数据结构;实践教学体系;教学改革;教学模式
“十一五”期间,教育部计算机科学与技术教学指导委员会发表了《高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)》。提出了“专业方向分类”发展的基本思想和三个辅助提议[1],其中建议之一是“加强学生实践和动手能力的培养”。程序设计能力是计算机科学技术相关专业最为重要的专业技能,它是评价本专业本科生培养质量的首要指标。计算机科学技术专业中开设了高级语言程序设计、数据结构等程序设计类专业基础课程,这些课程的教学质量直接决定了学生程序设计能力的高低。数据结构是最为重要的程序设计基础课程,是设计和实现各种应用软件的学科基础,课程教学效果对学生专业素养的形成具有重要的影响作用。
我校数据结构课程是江西省首批精品课程,为进一步提高课程教学质量,增强计算机专业学生程序设计综合能力,课程组在江西省高等学校教学研究立项课题“数据结构综合性课程设计探索与实践”和江西师大实验教改重点课题“数据结构新型实践教学体系的开发、设计与探索”的资助下,对数据结构实践教学体系进行了优化设计与教学实践。实践表明,该体系对提高学生程序设计综合能力起到了重要的作用。
1数据结构实践教学改革的必要性
数据结构教学中长期存在一部分老师重理论轻实践的现象,而且由于该课程内容比较抽象,有时教师即使花了很多的时间准备,也常出现学生看似明白算法思想,可是却无法真正实现算法的情况。主观上,学生对这门课程的认识仅停留在此门课是研究生入学考试的必考课程,知道这门课程是非常重要的,起初并不能体会到这门课程在专业学习中的作用,对它在软件设计与开发中的作用更是缺乏感性认识,学生学习的兴趣有待于提高。
数据结构作为实践性很强的计算机专业基础课,教学中必然离不开实践。大部分高校采用验证性实验作为课程实践的主要内容,即布置针对课堂教学内容的小型练习题,让学生去完成程序设计与实现。由于学生可以采用教材中现成的方法实现这类实验,因此其计算思维并没得到有效的锻炼[2]。另外,这类小型的实验一般都是由学生独立完成,团队协作精神在实践过程中也没有得到有效的锻炼。为了在课程实践环节加强团队协作,尽早地让学生接受软件工程训≮≯练,必须对传统的实践环节进行改革。
2数据结构实践教学体系
数据结构实践体系的设计
我校数据结构实践环节的教学改革最早从2000年开始,当时制定的该课程的教学目标是:“通过实践巩固理论知识,培养学生的程序设计能力”。具体做法是在教学计划中增加实践考核内容,经过3年实践,虽然学生程序调试能力有了普遍的提高,但学生的综合性程序设计能力有待进一步提高。2003年本课程获批江西省首批精品课程后,课程组对课程理论与实践教学进行了一系列的教学改革,到2006年,课程组开展的“基于网络协作模式的教学改革与实践”项目获江西省教学成果二等奖,精品课程建设初显成效。但如何进一步提高课程建设质量,提高学生综合性程序设计能力成为课程组面临的又一新课题。为此,课程组全面改革数据结构实践教学体系,在数据结构课程中引入了综合实验及综合性课程设计,修改后的课程实验体系如图1所示。
其中“基础实验”与课堂讲授同步,目的是加深对某个知识点的理解;综合实验是对多个知识点进行综合训练,加深对课程内容的整体认识,要求学生提交实验报告;课程设计是在课程结束后进行,要求学生以项目组的形式合作完成大型程序,以培养学生的综合程序设计能力及团队合作精神。教师提供了一些基本选题如表1所示,学生也可以自拟综合设计题目。课程组确定的综合性课程设计训练目标是:通过大型程序的编程训练,进一步培养学生程序设计综合能力、增强团队协作意识。课程设计安排在本课程的后期进行,此时学生已具备一定的程序设计基础,具有完成项目的能力。
2008年教育部高等学校计算机科学与技术教学指导委员会编制出版了《高等学校计算机科学与技术专业公共核心知识体系与课程》和《高等学校计算机科学技术专业实践体系与规范》两个指导性纲要,我们开展的教学改革思路与其指导思想完全吻合。
数据结构实践教学体系的实施
具体实施方法如下:
1) 基础实验与课堂教学同步进行,学生在实验课中完成该部分内容。
2) 综合实验与每一章的教学同步,一般要求学生完成“线性表顺序存储及其应用”,“线性表链式存储及其应用”,“栈与队列”,“树与应用”、“图”、“排序与检索”等综合性实验[3-4]。
3) 对于综合性课程设计,由于涉及一些课外知识,所以需要向学生介绍一些基于软件工程的大型程序开发方法,通过解析若干个大型程序范例,引导学生学习和掌握大型程序的设计思想和开发方法;对大型程序的训练题目给出问题的描述以及基本要求和高级要求,使学生可以根据实际情况进行不同层次要求的训练。项目实施时要注意设计题目的趣味性,鼓励学生在功能点上创新,并要求学生提交课程设计报告(如图2所示)。
4) 以项目式教学模式指导实践环节中的综合性课程设计[5-6],教师在数据结构课程中以项目教学模式流程为主线来设计教师和学生所从事的各类活动。为帮助学生选定题目,教师除了在日常的课程教学中引导学生选题外,还开展专题讲座,目的是引发学生对某一个或若干专题感兴趣,期间也可以给学生感兴趣的专题讲授一些概括性的知识。例如,教师结合数据结构介绍“互联网搜索引擎原理”等热点问题,极大地激发了学生的学习兴趣。
5) 采用软件工程思想指导项目教学模式。在项目教学模式中,教师按照软件工程的思想,要求学生进行需求分析、确定时间计划,确定行动方案、确定最终作品的形式、确定小组内的任务分工,教师负责审定项目计划,并进行必要的修改。项目实施过程中,上一届留下的资源可以给下一届学生借鉴,上一届学生中选拔的优秀学生可以作为我们开展项目教学的“学生助教”,让他们参与项目的审定,一方面节省了任课教师大量的时间,另一方面也提高了“学生助教”的实际工作能力。项目组在确定题目后,在“助教”和老师的共同参与下制定项目实施计划,开展项目研究,定期提交项目阶段性的研究成果或文档报告。
6) 改革成绩评价机制,充分调动学生的学习主动性。为了让学生有激情参与到实验教学中来,课程组改革了传统的教学成绩评定机制,期末理论成绩考试只占总成绩的50%,另外50%成绩来源于学生的项目实践成绩,图3是学生集中上机考试现场。学院建有机器人开放实验室、ACM程序设计竞赛组等学生创新实验平台。实验室成员从数据结构与算法方面具有较强动手能力的学生中选拔,ACM程序设计竞赛队的成员也基本上来自其中的优秀学生。在课程项目中表现突出的学生有更多的机会参与到学院各类横向或纵向课题的研究梯队。以上激励措施,极大的调动了学生的学习主观能动性。
3实践教学改革成效
在数据结构实践体系中,综合性课程设计通过问题建模培养学生将所学知识和实际问题联系起来的能力与意识;数据结构设计体现数据的组织结构对问题求解的差异;算法设计与实现根据具体问题的要求设计出合理的算法;测试帮助发现设计中所存在的问题,体现设计的性能。经过综合性课程设计的训练的学生,在后续软件开发课程的学习中表现出明显的优势。课程组经过3年的教学改革,主要取得了以下教学改革成效:
1) 出版《数据结构C语言版(第二版)》教材一部[3],出版《数据结构实验》教材一部[4];
2) 培养了学生的自主学习能力,培养了学生团队合作的精神,训练了学生的组织管理能力,一些学生的科研能力得到了早期的培养,参与过项目设计的学生在学校科研立项中获得好成绩,学生撰写的研究论文多篇发表在核心期刊上。
3) 煅炼了学生大型程序设计的开发能力,学生成绩显著提升,图4是学生连续三年考试的试卷分析情况,从中可以看出实践教学改革对学生成绩提升具有积极的作用;
4) 为学院ACM程序设计竞赛队和机器人实验室提供了后备力量。本校ACM队是江西高校唯一一支三年内迅速成长起来,每年都有资格和能力参赛,并与国内众多名校同台竞技的队伍。图5是我院学生在第33届ACM国际大学程序设计竞赛亚洲区现场赛比赛情况。
此外,课程组将本课程实践教学改革方法在“高级语言程序设计”等课程中推广,2009年课程组主持申报的“程序设计教学改革与创新”项目获批江西师大第十一批教学成果二等奖。
4结语
通过改革实验教学体系,学院学生程序设计能力得到了大幅度提高,学生多次在ACM程序设计竞赛与广茂达杯机器人大赛上获得好成绩。当然,由于学生个体差异性较大,较好地完成大型课程设计的同学所占比例还不高,课程设计指导教师的力量还比较薄弱,不能满足学生的辅导需求。实践教学改革的最大的受益者是学生,实践表明,较好完成实践环节训练的学生其程序设计能力、后续自主学习能力都得到了很大的提高。图6是学生自发地通过网络给教师留言,表达了学习体会。今后,课程组将进一步总结实践教学改革方法,努力提高学生软件开发综合能力,为计算机专业人才培养作出更大的贡献。
参考文献:
[1] 教育部高等学校计算机科学与技术教学指导委员会。 高等学校计算机科学与技术专业实践教学体系与规范[M]. 清华大学出版社,2008:7-9.
[2] 陈越,何钦铭,冯雁。数据结构综合性课程设计教学探索与实践[J]. 计算机教育,2008(4):54-55.
[3] 李云清,杨庆红,揭安全。数据结构(C语言版)[M]. 北京:人民邮电出版社,2009(6):130-160.
[4] 刘芳,揭安全。 数据结构实验[M]. 重庆:西南师范大学出版社,2010(1):1-40.
[5] 揭安全,李云清,杨庆红,等。 项目教学模式指导的“数据结构与算法”教学改革[J]. 计算机教育,2008(11):21-23
[6] Jie Anquan,Gan Dengwen,Yang Qinghong,et al. Research and Practice of the PBL Model for Data Structure Curriculum[C]// Proceedings of 2009 4th International Conference on computer Science & Education. 厦门:厦门大学出版社, 2009:1512-1515.
Design and Implement of Practical Teaching System for Data Structure
JIE An-quan, LI Yun-qing, YANG Qing-hong, HUA Zhi-zhang, WANG Lan
(College of Computer Information & Engineering, Jiangxi Normal University, Nanchang 330022, China)
Abstract: Data Structure is the curriculum with strong theoretical and practical characteristics. The construction of practice teaching system for Data Structure plays an important role in the cultivation of practical and innovative ability of students. By combining specialty characteristics of Data Structure, the contents, significance and achievement of building specialized experimental teaching are investigated, based on the reorganization and reform of experimental content, teaching model and teaching methods.
数据结构课程设计总结3
关键词数据结构;知识体系;教学设计
1 课程的地位与作用
《数据结构》是计算机科学与技术专业的核心专业基础课程,是计算机程序设计的重要理论和实践基础,是计算机理论与技术的重要基石。《数据结构》上承高级语言程序设计,下启算法分析与设计,是计算机科学与技术人才素质框架中的脊梁骨,对学生能力培养至关重要,向来是计算机本科教学的重中之重。调查表明已毕业的学生通过他们的工作实践认为《数据结构》是最有用的课程之一,这也从另一方面说明了该课程的重要性。
计算机科学与技术专业的培养目标之一是掌握计算机科学与技术的基本理论、计算机软/硬件基本知识及应用技术,《数据结构》在培养目标的实现中具有举足轻重的作用,是理解计算机科学与程序开发技术的关键课程。作为一门重要的专业必修课程,《数据结构》课程既是对以往课程的深入和扩展,也是为将来更加深入地学习其他专业课程打下基础。课程中所学习的排序问题的算法,以及基本的树、图等数据结构,是计算机科学的基本功。B+树等高级数据结构,也是数据库、操作系统、编译原理、计算机网络等后续课程的基础。《数据结构》是计算机专业考研的统考课程,也是很多大赛(“蓝桥杯”、ACM等)必涉及的知识。
《数据结构》与其它课程关系如图1所示。
图1 《数据结构》与其它课程关系
《数据结构》在培养目标中的作用如图2所示。
图2 《数据结构》在培养目标中的作用
2 课程的教学目标与主要内容
课程的教学目标
学习本课程后,应达到下列基本要求:
(1)理解数据结构的基本概念;
(2)熟练掌握线性表、栈、队列、树、图等常用数据结构的基本运算的实现及应用;
(3)熟练掌握排序和查找的常用算法及应用;
(4)能够对算法进行时间复杂度度、空间复杂度的分析;
(5)培养学生分析数据、组织数据的能力,能够根据实际问题来选择合适的数据结构,设计有效的算法。
教材与主要参考资料
教材
耿国华《数据结构(用C语言描述)》,高等教育出版社,2011年
教材选择的依据:
(1)该教材跟踪技术发展需要,体系科学,是“十一五”部级规划教材。
(2)该教材理论的阐述由浅入深、通俗易懂。
(3)该教材理论结合实际,配有大量的例题、习题与实习题。
主要参考资料
[1]严蔚敏,吴伟民《数据结构(C语言版)》,清华大学出版社,2006年
[2]张铭,王腾蛟,赵海燕《数据结构与算法》,高等教育出版社,2008年
[3]朱战立《数据结构――使用C语言(第4版)》,电子工业出版社,2009年
[4]王晓东《数据结构(C语言版).》电子工业出版社,2007年
[5]西北大学数据结构精品课程网站
http//:/datastr
[6]北大数据结构与算法课程网站
http:///pkujpk/course/sjjg/
[7]洛阳理工学院数据结构精品课程网站
http//:/sjjg
[8]洛阳理工学院数据结构精品资源共享课程网站
http//:/ds
知识体系
《数据结构》知识体系可分为分为三大块,如图3所示。
图3 《数据结构》知识体系
数据结构课程的基本知识模块是以数据的逻辑结构为主线,顺序介绍线性结构(线性表、栈、队列、串、数组、广义表)、树形结构、图结构。在介绍每种数据结构时,再讨论其存储结构以及相关的算法。在介绍完基本的数据结构及其存储结构和相关的算法后,介绍了两种常用技术:查找和排序。
3 课程教学内容安排
课程重点、难点
重点:线性表、栈、队列、二叉树、图典型数据结构的逻辑结构、存储结构和操作的实现方法,各种典型的排序和查找算法思想。
难点:各种数据结构的操作实现和应用
第1章是对数据结构课程的认识,基本概念比较多,概念要讲清楚、准确,第一章要通过丰富的例子讲解如何分析算法时间复杂度,这是贯穿整门课程的内容,也是本课程的一个难点,第2章是整个课程的重要基础,要讲得十分详细,为后面的章节打下良好的基础,第3章的栈与递归的实现是本书的一个难点,要通过例子讲透,并且在第6章还要进一步地讲递归到非递归的转换。第四章内容较简单,而且学生在高级语言程序设计中学习过字符串,因此留给学生自学,也可以培养学生的自学能力。第五章数组和广义表一般讲解即可。第6章的二叉树要详细讲解,第7章的几个关于图的算法较难,要结合例子讲解,第8章中的难点是平衡二叉树的调整和B树,要通过例子把算法的思想讲清楚,使学生能实际操作。第9章要把各种排序的思想、特点讲清楚,特别是较难的希尔排序、快速排序、堆排序、基数排序一定要结合实例讲解。
课时分配
表1 总课时:72;理论授课:58,实验:14
4 课程实践环节
数据结构是与实践紧密结合的课程,学生学习的理论必须经过大量的实践才能更好的掌握,因此必须强化实践教学。数据结构实践分两部分:一部分是随课程进行的实验,另一部分是课程结束后为期一周的课程设计。通过合理、有效地设计上机题目,改进实验考核方式,调动学生的积极性,启发引导学生掌握基础理论并能创新应用,增强学生综合运用有关知识的能力。
实验内容包括六个实验项目,分别为:线性表的基本操作(2学时),栈的基本操作(2学时),队列的基本操作(2学时),二叉树的建立及遍历(2学时),图的遍历的实现(2学时),宿舍管理查询系统(4学时)。其中宿舍管理查询系统实验为三性实验。
课程设计是课程结束后进行的很重要的实践环节,本课程课程设计给出14个题目,这些题目都是综合性的,学生可任选一题,完成后要写出课程设计报告。通过课程设计,使学生进一步理解和掌握所学各种基本知识,培养学生综合运用所学的理论知识和方法独立分析和解决问题的能力;训练学生用系统的观点和软件开发一般规范进行软件开发,使学生具备软件工作者所应具备的科学的工作方法和作风。
学生完成实验后,不仅要求学生提交高质量的规范的实验报告,还要引导学生互相交流,开阔视野。好的实验作业要放到班级公共邮箱里和所有学生共享。
5 课程的建设情况
课程资源情况
该课程教学文件完备。通过多年的教学,积累了必要的一些辅助教学资料(包括教学参考书、参考课件、声像、影像等),并且使用效果良好。补充的学习资料有:
(1)教学网站:http:///sjjg/
http:///ds/
(2)搜集了大量探讨数据结构理论与算法、介绍学科前沿动态的中、英文学术论文和硕、博论文,对其分类整理后在课程教学网站上提供下载链接,以供学生深入研究、学习;
(3)自编《数据结构实验指导书》;
(4)多媒体电子教案的纸制版和网络版;
(5)数据结构与课程实验指导书的纸制版和网络版;
(6)自编的算法演示器;
(7)Flash课件和Flash算法演示;
(8)图书馆内,国外优秀的经典教材。
实验实习条件
所有实验在计算机系机房进行,机房现有的实验平台功能齐全,课程中所涉及的实验项目均可在平台上完成。目前课程实验大纲中所列的实验开出率达到100%,实验教学效果良好。
课程成果
该课程2010年被评为河南省级精品课程,2012河南省级精品资源课程。
6 教学设计
《数据结构》是一门理论与实践相结合的课程。由于理论的抽象性,学生难以建立起数据结构的相应算法概念,容易产生畏惧和茫然的情绪。因此教学中在积极引导学生、启发学生,激发学生学习的积极性。教学以课堂讲授为主,同时借助网络教学平台,拓展课堂讲授的相关知识,便于同学自主学习、巩固课堂所学内容。另外,组织独立习题课,针对学生作业中出现的典型问题进行深入探讨。
在教学中要贯彻“以理论学习为主线,以课程实验、课程设计为补充”的教学思想。
精心组织教学内容
分析学生的需求和现实,同时紧紧抓住教学目的,参考相关院校的教材和教学计划,取长补短,参考考研大纲、软考大纲,对课程的内容进行严格的筛选,删除一些较深且应用不是很广泛的内容,对于重点的内容要精讲、细讲,而对于有些较简单且与先修课程交叉的内容(如字符串与数组),就粗讲,甚至可以留给学生去自学。这样重点突出,简洁明了。在课程内容的安排上由浅入深,循序渐进。对每种数据结构都按三个层次来组织教学内容,并且把这三个层次的思想贯穿于数据结构教学的各个环节。第一个层次,基本概念、方法,这是最基本的内容,学生必须掌握,在学生很好地掌握了这个层次的内容后,可进入第二个层次,基本概念、知识的简单应用,这一层次是对基本概念、知识加深理解,这个层次学生必须达到。第三个层次就是基本概念、方法的深入应用,把所学的知识、方法串起来灵活运用。要达到这个层次,需经过大量的训练才行。
实现数据结构课程与其先修和后续课程的无缝衔接
程序设计语言(如C语言)是本课程的一门非常重要的先修课程,数据库原理、编译原理、操作系统是该课程的后续课程,这些课程不能各自为政,而要无缝衔接,教这些课程的老师要互相交流,这样在讲程序设计语言时可以有的放矢的把和数据结构联系紧密的内容预先告知学生,这样学生就会对相关知识印象深刻,到数据结构课中就很容易用的得心应手。在数据结构课中讲到各种后续课程中用到的数据结构时也告诉学生,并且在后续课程中用到相关数据结构时提醒学生这是这种数据结构在本课程中的应用。这样使学生的知识一脉相承,使学生在学习各门课程时把知识融会贯通。
精讲多练,加强实践环节,培养学生分析问题解决问题的能力
数据结构既有大量的理论又是实践性很强的课程,学生要很好地掌握这门课,必须要有一定的理论知识,又要经过大量的上机实践。因此,针对应用型本科的特点,在教学过程中,即注重理论,又重视实践,加大上机实践的力度。实践由与理论课同时进行的上机实验和理论课讲授完毕后的课程设计两部分组成。对所学的每一部分内容都要要求学生完成相应的实验习题。整个实践过程要结合教学进度与学生的实际情况,制定实践的内容。每部分的实验习题必须精心挑选,和上述三个层次对应,分为基础与验证型实验、设计与综合型实验,开发与创新型实验。既要把基本知识掌握好,又要会灵活运用。基础与验证型实验是基本的、较简单的题目,主要结合课堂理论教学内容展开,学生可以对在课堂上学到的基本算法进行验证;设计与综合型实验是具有挑战性的较难的新颖有趣的题目,让学生充分利用所学的理论知识进行相对较复杂的应用设计,培养学生综合能力;开发与创新型实验培养学生的创新意识,提高综合能力和创新实践能力。
多样化的教学方法
启发式教学
教师主要起引导的作用,激发学生的学习兴趣,发挥学生的学习积极性,与学生进行互动,鼓励学生对教学内容提出问题,师生共同讨论,提高教学和学习水平。鼓励学生多动脑子进行思考,在学习过程中不拘于以往的解法,对同一个问题可以提出不同的解法,深化对问题的理解。另外还要强调学生自己学会对知识的总结、梳理、推演和挖掘。总结是教学中一个非常重要的环节,不可忽视。通过对所学内容的总结、梳理、推演和挖掘,理清内容的内在联系,使知识条理化、系统化,加强对知识的理解和掌握,培养学生的归纳总结能力和思维创造能力,对所学内容提炼出精华的东西。(下转第260页)
(上接第167页) 对比式教学
对同一问题,引导学生从不同的角度去思考,找出多种方法来解决。比如,在解决约瑟夫环问题时,可以采用循环链表作存储结构,或采用线性表的顺序存储结构,也可以采用数组作存储结构。这种对同一问题寻找不同算法实现的教学方式,有效地开阔了学生的思路,同时通过对不同算法的比较,加深了学生对算法的理解和掌握。
案例教学
通过实例引入知识点。比如讲最小生成树可以通过城市间建立通信联络网为例引入最小生成树及其求解算法,再比如讲最短路径可以通过去旅游选择最短路径为例引入最短路径及其求解方法。
把课程与考研、软考、相关竞赛有机的结合起来
数据结构是计算机专业考研和软考的必考科目,在教学过程中有意识地把考研和软考引入教学中,使学生学完本课程后能够从容应对考研和软考中的数据结构题目。组织和鼓励学生参加程序员,高级程序员证书考试,辅导学生参加各种编程竞赛比如ACM大赛。
7 考核方法
要加强平时的学习过程管理,不定时地进行一些随堂的小测试,课堂提问等。考试以学生完成日常作业和实验环节为必要条件,期末考试采用笔试方式。成绩评定由三部分组成:期末考试占总成绩的60%,平时成绩占总成绩的20%,实验占总成绩的20%,综合考核学生该科成绩。
8 结语
《数据结构》对计算机科学与技术专业的学生来说是非常重要的课程,组织好教学,使学生通过该课程的教学,很好地掌握数据结构的相关知识,为今后的学习奠定良好的基础是非常重要的。
参考文献
[1]耿国华。数据结构――用C语言描述[M].北京:高等教育出版社,2011.