首页

数据结构课程 “数据结构”课程教学策略初探

点击:0时间:2019-11-07 03:01:22

魏蕾 蔡骋 冯妍

摘 要:“数据结构”课程既是核算机范畴的专业根底课,也是承受程序规划与高效算法及后续学习的纽带课程。文章从“数据结构”课程教育现状动身,运用认知结构理论提出了数据结构课程教育战略。

关键词:数据结构;认知结构;战略

中图分类号:G642.3 文献标识码:A 文章编号:1002-4107(2016)12-0027-02

近年来,高校教育改革重视的要点,除构建根底理论的常识结构系统外,也重视学生的实践才能的培育和立异性的进步。高等院校的核算机相关专业,应以核算机科学与技能学科理论常识为根底,加大实践教育环节的培育,以完结用科学、工程化的办法开发和保护具有较强实用性、高质量的软件为意图,然后培育新式实用性人才,以习惯不断改变的工作需求。

“数据结构”课程的教育内容,侧重于典型数据结构及经典算法的解说与演示,已经有较为老练的理论常识系统,但存在着笼统难明,试验时困难重重等问题[1]。处理现在的教育窘境,需求在调整教育内容的一起,重视教育办法的改善。

一、清晰教育方针

美国教育心思学家布鲁纳在认知结构教育理论中指出,开展学生的智力应该是教与学的首要意图[2]。在这儿,教与学都应该有清晰的方针。

从教的视点来看,提出教育方针,亦即经过课程学习,学生应把握的理论常识和应具有的才能、本质。具体来说,就是:树立数据结构概念,树立数据结构规划与算法规划的根本思维方法;把握选用不同数据结构剖析问题和规划程序的办法;结合实践问题,挑选高效的数据结构,并能剖析相应算法的功率[3]。

从学的视点来看,学生对这门课程的期望值,分为三个层次,由低到高依次为:修完课程,到达根本要求,拿到学分;对核算机相关职业感爱好,有激烈考级、考研需求,情愿花课余时刻和精力去学习;热衷于对核算机理论、相关算法的改善和研讨,致力于进步软件开发和运转功率,情愿不眠不休,花费许多时刻和精力去研讨。

从历年的数字来看,学生的学习热心,从被迫型(Ⅲ型)到活泼型(Ⅱ型)再到疯狂型(Ⅰ型),所占的份额也有所不同。笔者选取了西北农林科技大学信息核算专业近5年的学生情况进行剖析比照,如表1所示。

表1 学生学习情况分型表

从表1中不难看出,近年来Ⅰ型学生的百分比有所下降,尤其是Ⅱ型学生,他们对这门课程的爱好度下降非常明显,13级的数字显现,将近52%的学生都只是为到达课程要求而学习。这当然和专业需求、课程难易程度,及运用性要求密不可分,但也需求任课教师依据学生学习方针,恰当调整教育方针和进程。

影响学生学习的关键因素是动机,它取决于学生的心思倾向和为学习所做的预备。在教育中,需求任课教师活泼干涉和引导,便于学生清晰学习方针和爱好点,为他们的后续学习做好衬托。

二、使常识结构习惯认知结构

学生学习的认知结构与人类知道客观事物的进程非常相似,为促进教育,应挑选恰当的常识结构及合适学生学习的办法。本门课程,是一个敞开、有序、内容丰厚的常识结构系统。它触及范畴广,包含常识点多,理论性较强。课程的常识结构首要有根本结构及运用算法两部分。学生的“数据结构”认知结构是学生依照自己的经历与了解,依据感知、回忆和思维的特色,使常识在脑筋里安排成具有内部规矩的全体结构,既包含学生已有的数据结构常识,又包含了这些常识的内部安排方法。

“数据结构”课程教育,需求尽早在这两种结构之间树立联络。讲堂上,教师应首要把学科的常识结构和逻辑安排全面展现给学生,以便于学生的了解和把握。

为缩小学生与常识结构间的距离,第一堂课引证职工信息表的比方,规划四种不同的运用场景,分别是:全员参与团体活动、按年纪巨细进行体检、职工职务联络、职工之间的老友联络。该例中数据元素之间的逻辑联络,对应四种典型逻辑结构:调集、线性结构、树形结构、图状/网状结构。经过该例,学生能直观感触数据的逻辑联络,偏重新发现自己原有的常识情况,促进、改造现有的常识结构,而且在此根底上修正和发现新的学习,一起还能增强学习的爱好和决心。厘清逻辑联络后,再引进物理结构,提出次第和链式存储结构的概念,使学生清晰逻辑结构与物理结构研讨的内容和之间的联络即可。在后续章节的教育中,再进行深入研讨和评论。

三、合理规划教育序列

依照研讨问题的进程,规划教育序列。学生的学习进程,不应是单纯地承受,而是活泼地进行信息加工。

待学生对研讨内容和学习办法有了初识,再引进算法和算法剖析的概念。首要介绍算法特性和算法规划的要求。为防止混杂,可以用学生在学习编程言语阶段的编程标题为例,进步学生对概念的了解度及认同感,增强学习的决心。关于算法剖析的测量,此处触及渐进时刻复杂度和空间复杂度,要点在于算法剖析的办法。讲堂教育时,选用问答式教育办法,既能启示学生考虑,又能活泼讲堂气氛,经过不同类型算法的剖析,让学生把握根本的办法。

后续章节内容的学习,分为两个层次,首要是依照线性结构—树形结构—图状结构的次第,从简略根本的结构下手,再逐渐细化、深化;其次就是运用算法的层次,这儿首要触及排序、查找的经典结构、算法及剖析。经过教育,学生了解并承受研讨“数据结构”的流程:依据实践运用问题,剖析逻辑联络,挑选存储结构,完结算法,剖析算法功率,优化。这样不只可以进步学生的活泼性,更能有用引导学生学习常识与把握学习的办法。

学生学习常识,把握技能的进程不可能一蹴即至,需求铢积寸累,按部就班。在整个教育进程中,教师应考虑学生的认知结构和学习根底,激起学生的认知行为和潜力,活泼引导学生充沛思维,发散思维,充沛体现学科的系统性和学生的主动性,并将其有序结合。

四、强化感性知道与理性认知

大学的“数据结构”讲堂,多选用多媒体课件,除运用演示文稿解说根本理论常识,还加入了动画、声响、视频等多媒体元素,可以动态仿照操作算法的履行。这种辅佐教育办法深入浅出,有利于学生的形象思维,加深学生对笼统问题的感性知道。但存在一个不容忽视的问题,就是学生变“笨”了,他们只重视概念的了解,疏忽了算法完结,及代码编写。学生常常会有“讲堂听懂很简单,实习编码写不出”的困扰。

关于笼统概念的了解,感性知道的效果不可或缺,但“数据结构”的教育,仍需进一步加强与深化。笔者的做法是在一个完好的常识模块里,挑选一个典型事例,精讲,细讲,透讲。关于刚触摸课程的学生来说,可以有完好的典范供他们仿照,是很有必要的。比方在线性结构的线性表部分,可以用约瑟夫环的问题作为演示,该问题难易适中,规划不大,合适讲堂解说和演示。从树立单循环链表开端,归纳运用线性表的查找、删去等操作,直到完结约瑟夫环的输出,在剖析进程中演示编写代码。这样能保证学生讲堂了解算法思维,课下可以仿照教师讲堂的演示,复原处理问题的完好进程。仿照的进程,也就是培育和树立良好习惯的进程。这样的精讲典范,不必许多,结合课时分配,针对典型数据结构进行解说即可。

五、重视实践教育探究

讲堂教育之外,编程实践也是“数据结构”教育中至关重要的环节。现在运用的教材中,大多给出类—言语的算法,要求学生在实践环节完结代码的编写。实践时选用的方法是在现有试验渠道上,由任课教师供给标题,输入,输出及测验用例,拟定相应规矩。要求学生独立规划算法,编写代码,完结相应题意图规划与完结。这种办法,让每位学生都着手编写代码,起到了理论阶段性验证的效果,但存在一些问题:部分典型算法的验证,讲堂已解说过,教材也有配套资源,导致学生活泼性下降;题意图难易程度不尽相同,缺少一致点评规范;不符合软件开发的规范流程。

笔者结合教育内容,将灵敏开发模型、归纳试验渠道引进到“数据结构”课程的实践进程中。

首要,经过“收集—评论—挑选—测验”的闭环进程树立试验课题库渠道,使得原课程中涣散的常识点转化为项意图技能亮点,有机结合,防止常识点过于孤立;丰厚试验题库的内容,增设运用题库和考研题库,以激起学生的学习爱好及研制热心;加大题意图难度,增强学生对难点问题的了解和把握。

其次,挑选灵敏模型,结合项目题库,融入到学生的试验进程中,构成一套行之有用的规范化开发模型。具体来说,有灵敏进程布置、人物设定、继续改善与自动化测验[4],将灵敏开发模型进程融入学生学习和实训的进程。例如,最短途径标题,将归纳才能较强的学生设定为客户方担任人(PO),其全体担任需求组成、用户故事分化、各个特性团队的解耦。将着手才能较强的学生设定为灵敏专家(SM),其全体担任各个特性团队,并辅导团队内的自安排、闭环学习以及故事的交给。各个特性团队除了设定灵敏专家,还装备质量剖析师(QA)、开发人员。这个团队经过站会、看板、结对、发布会、回归会等一系列灵敏进程继续改善,完结终究的试验标题。

总归,“数据结构”课程是一门理论性较强,需求紧密联络实践的科学。用现代教育理念辅导,结合先进的软件开发技能,辅导“数据结构”教育及实践,关于进步学生的理论认知、培育学生的立异认识和编程实践才能,具有非常深远的含义。

参考文献:

[1]赵耀红,孙宇.数据结构试验教育的实践与探究[J].长

春大学学报,2012,(4).

[2][美]杰罗姆·布鲁纳;宋文里,黄小鹏译.布鲁纳教育文

化观[M].北京:首都师范大学出版社,2011:92-96.

[3]严蔚敏,吴伟民.数据结构:C言语版[M].北京:清华大

学出版社,2011:1-2.

[4]胡文生,赵明,杨剑锋等.根据UML模型的灵敏开发迭代

次第的断定[J].核算机科学,2013,(12).

相关新闻
最新新闻
关闭