APP下载

数据结构与算法课程融合分析和设计

2020-03-03周益民

教育观察 2020年45期
关键词:数据结构课程内容融合

周益民

(电子科技大学,四川成都,611731)

一、背景分析

自20世纪80年代以来,中国信息产业历经40多年的发展。以计算机和微电子为代表的IT行业发展蓬勃向上,信息技术不断更迭,有力地推动了社会生产力的不断提高。2014年9月,李克强总理在达沃斯论坛上提出“大众创业、万众创新”的号召,“双创”一词由此普及开来。[1]2015年7月,国务院印发《国务院关于积极推进“互联网+”行动的指导意见》,“互联网+”成为人们生活中的热门词语。2016年,互联网的发展呈现新格局,这一年被称为“中国网络直播元年”,同时也被称为“VR元年”。2017年是中国人工智能领域发展的关键之年,无论是《政府工作报告》还是十九大报告,都将人工智能作为一项发展内容明确提出。[2]《新一代人工智能发展规划》《促进新一代人工智能产业发展三年行动计划(2018—2020年)》等一系列政策规划的推出让人工智能的发展有了明确的时间表和路线图。新的历史时期提出了新的需求与挑战,高等学校电子类工科特别是计算机类的教育教学改革势在必行。[3]

2015年,国务院印发了《统筹推进世界一流大学和一流学科建设总体方案》,旨在提升中国高等教育综合实力和国际竞争力,为实现“两个一百年”奋斗目标和中国梦提供有力支撑。2016年,中国正式加入“华盛顿体系”,标志着我国工程教育改革和发展与国际正式接轨。2017年,教育部牵头提出的“新工科建设”,明确了面向经济发展迫切需要培养新型工科人才。

本文提出了针对计算机学科学生不同专业方向的教学方法。首先,本文介绍课程融合改革的由来,继而分析在计算机类课程中,数据结构和算法设计与分析两门课程的内在联系,提出其融合的必要性。其次,本文分析上述两门课程在融合过程遇到的问题和挑战,提出针对不同专业方向学生所采取的融合课程——数据结构与算法的教学模式。最终的目的是让学生将两门课程的理论实践知识融会贯通,实现夯实基础、培养创新创业能力的目标,并将学到的知识综合运用到高阶课程和专业实际应用中。

二、课程融合改革

课程融合既存在于同一专业不同学科之间,也存在于不同专业不同学科之间。教育界针对课程融合的改革由来已久。根据学科专业的建设需要和学生学习的适应性进行课程融合改革,是推动专业课程教学高效发展的一个重要途径。

(一)课程融合

课程融合是指整合若干相关联的学科课程,使之成为一门应用更广泛的课程。它既可以提供整体观念,又有利于联系知识的不同领域。课程内容要按学生的心理需求、兴趣、好奇心等来编制,要有助于学生学习和个性发展,有利于加强教学与社会的密切联系。课程融合不是机械地合并原有课程,而是把部分科目统合,兼并于范围较广的新科目,选择对学生有意义的论题或概括性的问题进行教学。教师统一讲授具备共同点的科目,融合的子课程不仅具备共同点,而且具有很强的相关性。课程融合从基础理论、抽象和设计三个层面将多个课程知识体系进行重组织,旨在逐步培养学生从理论到实践进行系统全局设计的思维和能力,为建设具有高阶性、创新性和挑战度的课程做好过渡准备。[4]

(二)改革目标

教学改革及其实施过程不是一蹴而就的,而是一个不断发展和改进的过程,改革的过程也是曲折的。总体来看,教学改革是一个螺旋式上升的进程,推动着我国高等教育的深化发展。19世纪末20世纪初,比较著名的课程融合教学改革理论有齐勒计划(历史、文学、宗教中心整合论)、麦克默里的地理中心整合论和帕克计划(儿童中心整合论)。[5]杜威在20世纪30年代曾批评课程的狭窄性,提倡动态的教育过程。20世纪70年代,人本主义教育思想兴起,课程融合在经历50年代的沉默后又一次受到关注。课程融合教学改革的目标是任课教师充分全面地把握融合子课程内容,在传统教学模式的基础上加入关联的教学方法,用联系的观点讲授原理知识,在破除关联学科的壁垒后,激发学生的思维碰撞,对学生系统学习专业课程进行思维上的训练。

三、数据结构与算法课程的内在联系

数据结构与算法课程是计算机类专业课程中比较基础但又十分重要的一门融合课程。它融合了课程数据结构和算法设计与分析两门专业课的知识点。

(一)课程背景

数据结构作为计算机科学与技术一级学科中的一门典型的基础必修课程,也是工科专业(非计算机专业)的基础选修课或专业课。该课程研究计算机中数据存储的不同结构及其相互关系。算法设计与分析作为计算机专业的高年级选修课程,在塑造本科生建立算法思维方面有举足轻重的地位。该课程凝聚了编程中用于解决某类问题的方法及其对应的步骤。

这两门课程已经被收录在教育部CCC2006学科规范当中。作为计算机的技术和理论基础课程,它们长期被纳入先进计算机课程体系中。这两门课程是计算机网络、编译原理、计算机操作系统、计算机图形学等后续课程的基础理论,其应用范围也早已扩展到图像处理与模式识别、海量数据挖掘、科学数据处理、复杂网络分析等许多计算机前沿领域,对学生的知识储备增加、创新能力提升有着重要作用。

融合后的新课程——数据结构与算法将从问题求解出发,站在逻辑、存储、运算三个角度组织课程内容,重视学生实践能力和工程能力的培养,初步培养学生的计算思维能力,算法设计与分析能力,程序设计与编程实现能力,计算机系统的认知、分析、设计和运用能力及工程实践能力。

(二)内在联系

数据结构是对生活中常见的事物进行抽象和归纳的基本数据存储形式。而算法分析与设计课程是以数据结构课程提供的基本数据形式为载体,利用算法设计思想解决问题。在计算机程序中,沃斯曾说:“程序等于算法加数据结构。”因此,程序的设计依赖于数据结构和算法的相互辅助。脱离了算法思想,数据结构无法发挥其作用。脱离了数据结构,算法只是思维过程,无法解决实际存在的问题。因此,两者相互依赖。要解决需要用计算机处理的问题,数据结构和算法缺一不可。因此,这两门课程的融合将助力学生程序设计知识的触类旁通。在实践训练中,数据结构和算法课程的融合则显得更为密切。只有综合了数据结构和算法的实验实践,才能真正让学生获得与科学研究、工业实践更加契合的思维锻炼和科学实践训练。融合课程可以使学生在较短的时间中获得“1+1>2”的实践学习效果。

(三)融合目标

计算机专业融合课程教学需要任课教师深挖融合课程的内在联系,改进传统的讲授方法,尽最大努力让学生学以致用,加强对学生关联思维的培养。要扩大知识传授的范围,减轻学生的学习压力,培养学生的创新思维和解决问题的能力,课程融合改革势在必行。长期以来,数据结构和算法设计与分析课程在融合过程中的困难和挑战是任课教师关注的重点。高校探索这两门专业课程的融合,将为数据结构与算法课程改革夯实基础。

(四)融合优势

数据结构课程内容比较抽象,单独讲授该门课程常使学生迷惑而不知道该门课程内容的实际用途。而算法设计与分析课程对学生的数学功底又有要求,教师单纯讲授算法设计与分析容易弱化数据结构中的内容,使学生不能很好地将两者有机结合起来。因此,教师融合讲授两门课程,一方面可以使学生用一门课程的时间很好地消化和吸收两者,另一方面可以推动教学方法的融合,升级传统教学模式,将专业基础教育与创新发展结合起来,实现计算机专业教学改革。随着国家对高校课堂教学质量提出更高的要求,高校着力打造“金课”、淘汰“水课”。高校融合这两门课程,可以更好地增强课程内容的综合性和进阶性,使学校利用现代信息化工具建设线上线下混合式课程成为可能,节省了教学资源。

四、改革中的困难与解决方案

课程融合是不断演进的,起初会存在一些问题。这些问题正是在高校实践中才能被不断发现并解决的。

(一)挑战和问题

教师对课程难易度把握不准,学生掌握程度存在差异。教师在融合课程知识点的讲授方面容易受过去的影响。如果课程融合只是机械地合并,那么情况会很糟。比如,教师在课堂的前半部分讲述数据结构,后半部分讲述算法。一般而言,融合课程教材的编排会在前半部分穿插算法的内容,然而,有些教师没有进行前后关联教学。同时,学生的理解力存在差异,对知识的接受程度也各有不同。不同专业学生的知识背景也有非常大的差别。数据结构与算法这门融合课程不仅针对计算机专业的学生,而且是其他相关专业的基础课程。学生的专业背景和知识差别只能通过任课教师专门的契合式教育进行弥补。教师与学生若缺乏沟通和交流,授课效果将受到影响。

(二)方法与措施

针对学生掌握程度的差异,教师可以预先按照授课内容的难易程度进行分班,让学生提前根据自身情况选班,做到因材施教。高校可以重点建设探讨式小班,打造具有挑战性的“金课”。同时,保留大班教学,兼顾学生传统的学习习惯。这门融合课程可以在试验阶段由不同的教师联合教学,教师在互相学习的过程中提升教学能力。教学资源的整合和教材的改编更加体现了知识的关联性和融合性,而不是简单的机械拼接。

对于不同专业背景的学生,授课教师要充分了解学生所学专业,根据学生所学专业决定课程内容的详略,做到重点分明,尽可能地符合学生的知识背景。比如,针对数字媒体技术专业的学生,教师在实践课程中要注重引导学生解决图像处理的相关算法问题。而针对人工智能专业的学生,教师可以让学生在实践中进行与机器学习相关的基础算法学习。教师根据学生的不同专业背景对症下药,可以降低学生在未来学习进阶专业课程的难度。此外,教师还可以鼓励不同专业背景的学生在学习过程中参加与自己专业相关的竞赛,如网络安全大赛、创新创业比赛和人工智能比赛等,使学生真正将理论知识落实到实践中。

同一专业授课的教师要经常进行交流沟通,以获取学生对课程的真实反馈。教师只有群策群力,将学生与课程紧密结合起来,站在学生的角度去理解授课的方法,才能将两门课程更好地融为一体。此外,高校可以建立线上线下学生跟踪反馈制度,根据学生的听课情况和平时作业情况,优化课程内容,在每一章学习完毕后,给予师生交流时间,使学生真正做到学有所思、学有所获。

在课程内容选择方面,教师应该选用一些工程意义明显、实施效果显著的例子,这样可以培养学生将来在社会工程实践中解决问题的能力,做到紧跟科技前沿和社会工作的需求,提高学生的创新力和就业竞争力。以该融合课程的线性表知识为例,简单的线性表的创建、插入、删除操作实验过于机械化。如果教师将其融入算法思想,将课程实验设计为创建一个好友通讯录,那么课程就变得综合且接地气。

(三)前景与展望

数据结构和算法设计与分析课程的融合强调对学生进行基础数据结构与算法的训练,从问题求解的角度恰当地培养学生运用数据结构和算法基本理论来分析和解决问题的能力,以学生为本,多元化考虑知识的内在联系,降低学生总结相关知识点的难度,让其比较清晰地看出课程体系的轮廓。两门课程的融合会提高学生的实践能力和工程能力,为其将来从事计算机学科的学习、开发和研究或求解其他计算机相关问题打下坚实基础。为了更好地融合两门课程,教师还可以在课堂中加入一些前沿的研究课题,开阔学生的视野,设计一些启发式教学案例,扩展学生的知识体系,鼓励学生主动学习、创新和研究。这两门计算机课程融合的成功经验可以推广到其他的课程。比如,汇编语言和微机接口技术课程的融合、数字电路分析和模拟电路课程的融合等。高校可以根据这些课程的关联性,优化课程内容设置、节约课程资源、建设高效课堂,为打造专业“金课”做好充足准备。

五、结语

本文基于课程融合的教学改革措施,阐述了计算机专业的两门专业课程——数据结构和算法设计与分析融合过程中存在的挑战,如不同学生对知识点掌握程度不均衡,统一的教材不适合不同专业背景的学生等。本文基于上述问题提出了三个方面的解决方法:第一,对跨专业的学生因材施教;第二,根据学生的专业知识背景对知识点进行详略划分;第三,任课教师之间加强交流。在教育部提倡打造“金课”的大环境下,课程融合将为课程改革提供基础,为学生高效学习提供有效途径。

猜你喜欢

数据结构课程内容融合
基于“课程内容六要素”的绘本文本解读路径探析
村企党建联建融合共赢
融合菜
水彩画课程内容与教学体系改革的必要性
数据结构线上线下混合教学模式探讨
从创新出发,与高考数列相遇、融合
《融合》
为什么会有“数据结构”?
高职高专数据结构教学改革探讨
学前教育专业体育课程内容的构建