彭 刚,陈 强
(东莞城市学院人工智能学院 广东 东莞 523808)
数据结构课程是计算机专业的一门十分重要的核心必修课程,它是操作系统、数据库、计算机网络等专业课程的基础[1]。它能训练学生的算法设计与编程能力,是计算机类专业培养创新应用型人才的重要课程。数据结构关注数据的存储、组织、传输和转换等基本概念与方法,目的是使学生掌握数据表示、存储与检索等方面的基础知识与原理[2]。
数据结构课程涉及许多抽象的理论概念,传统的教学模式通常只注重理论教学和基础实验,与社会需求存在一定脱节[3]。为适应行业发展需求,培养学生的动手能力、创新意识与对科技前沿的掌握,有必要对数据结构课程进行科教融合的教学改革。将基本理论与应用发展结合起来,不仅加深了学生对数据结构基础知识的理解,而且提高其技术应用与问题解决的能力。这对数据抽象、高级程序设计等方面的能力培养具有重要意义。1“数据结构”课程科教融合的意义科教融合是高等教育的一种创新理念,它强调将科研与教学进行有效的结合,以实现相互促进。科教融合作为培养创新人才的重要途径,正被越来越多高水平院校所采用和推广[4]。2019 年教育部发布了《关于深化本科教育教学改革全面提高人才培养质量的意见》,提出要注重科研反哺教学,推动科研育人,高校应及时把最新科研成果引入教学内容,激发学生的专业学习兴趣[5]。
科教融合的理念是以培养创新人才为目标,在教学中吸收科研内容,实现两者的有机融合,形成一种创新人才培养的新模式。它高度凝聚了洪堡“教学与科研需统一”的观点,体现了当前高等教育的发展趋势[6]。“博耶报告”进一步明确了科研在高水平院校人才培养中的关键性作用,呼吁教学与科研实现良性互动[7]。
科教融合的核心内涵是在教学过程中实现“寓研于教”,教师不再是简单地知识传授,而是注重启发学生的主动思考、分析和解决问题的能力。我们需要树立统一的科教观念,改变传统的科教分离状态,通过科教融合培养创新人才,这是提升高校教学质量、提升院校办学水平的必由之路[8]。
科教融合依托教学与科研在人才培养中的内在统一性,发挥科研育人的优势,更好地培养学生的学习能力、终身学习能力和创新实践能力。为此,针对“数据结构”课程进行科教融合教学改革,具有以下积极意义:
①打造金课,推进一流专业建设。汲取社会需求和学科前沿,更新教学内容,探索问题驱动的教学模式,打造“数据结构”金课,为一流专业建设提供支撑。
②拓宽学生的科研视野,激发其专业学习兴趣。将前沿科研成果融入课堂,拓宽学生的国际化视野,激发学生对专业知识的探索兴趣。
③培养创新思维,提升创新实践能力。通过科研项目的驱动,培养学生的团队合作能力以及发现和解决问题的能力,全面提升其创新意识和创新实践能力。2“数据结构”课程科教融合教学改革的举措
首先,要建设适应科教融合的教学师资团队。教学团队既要有本专业的高端科研人才,也要有相近专业或跨专业的科研工作者及校外来自企业的实践型高技术人才[9]。针对多类型差异化的人才需求,对各类不同人才进行有区分的分类评价。结合校企产学研联合培养模式,学生经历理论学习和专业实践,通过接触校内科研人员和校外资深工程师,了解当前的科研难点和突破方向。由此可以让学生通过校内外优秀专家了解专业前沿科研成就,以及企业技术人员所需的综合知识和实践能力。
其次,构建功能完善的科教平台。学生通过科教平台,既可以进行基础的理论学习,又能了解最新专业的科研成果,拓展学生的专业思维,培养学生的创新思维。完善的科教平台应包括教学资源、基础理论、研究课题、最新发展、专业文献、研讨交流等内容,整合校内教师的科学研究方向和校外企业技术发展。开放的可持续发展的科教平台,有助于学生进行研究性学习,借此学生可充分体验到专业技术的应用价值和前沿魅力。
数据结构的基本内容主要包括6 个专题:线性表、栈和队列、树、图、查找和排序,课本上的概念较为抽象难以理解,学生学习困难,也不明白这些知识的实际应用价值,缺乏学习动力和兴趣[10]。因此,在学生掌握基础知识和算法后,教师需要补充有关前沿专题的最新研究成果,借助科教平台和科研成果,将某些研究项目作为典型案例,组织专题学术讲座,培养学生的科研思维。表1 为数据结构的教学体系。
表1 数据结构课程教学体系
在课堂设计上,注重各专题中的基本算法和典型应用,结合最新发展促进学生的思维拓展和创新能力。结合科研和企业需求,设置开放性作业,组织学生查阅资料并汇报,提高其科研思维和文献检索能力。在此过程中,实行组内和组间互评,并结合教师评分考核学生。这样可以让学生意识到知识的活性、变动性和错误可能性,激发探索精神,使其敢于质疑权威,通过查询文献证明自己的观点,促进知识掌握。
在课程重点内容上,组织学生探讨,发现目前的研究热点、难点,开展系列科研,申报创新创业项目,引导学生参与科研团队,更新教学内容,增加创新实验项目,培养其团队精神和创新能力。
科教融合的新工科教育既要传授学生知识,又要培养其科研创新能力。教师需要基于前沿领域进行研究,同时开展学术道德教育,改变传统模式,将创新元素融入教学。考核上也需要突破单一方式,培养适应科技变化的复合型人才。
教学方法可以多样化,如启发式、讨论式、搜索式、思考式等,并融入科研实践。学生可以参与教师的科研项目,在开放性课题中培养独立提出和解决问题的能力。学生遇到问题时可以互助交流,在探索中深化对知识的掌握。鼓励学生撰写学术论文和申请专利。在综合评价中,将科研实践、成果计入考核体系。
随着微处理器进入多核时代,硬件架构的发展促进了并行计算技术的快速发展。在多核硬件平台下,多线程编程可以真正实现并行执行。相比于单线程程序,优化后的多线程算法的性能会大大提高。
学生在教师指导下查阅相关文献,重点指导学生利用并行算法解决Fibonacci 数列问题。Fibonacci 数列在许多领域都有应用,但单线程计算随着项数增长,计算时间会呈指数级增加。学生通过查找文献学习多线程设计该算法,研究并行计算原理,经过多次讨论和优化设计出最优多线程算法,大大缩短了计算时间。
数据结构课程中引入多核技术和并行计算专题,体现了课程内容的先进性、时代性和科学性,满足了高校计算机教育对最新技术发展的需求。通过技术和算法的结合,教师在教授传统数据结构的同时,还使学生了解了多核架构,掌握并行编程思想,通过基础算法并行化设计,养成在软件设计中融入并行计算思维的习惯。
对于海量视频数据,必须使用数据压缩算法显著减小文件大小,实现高效存储和传输。选择合适的压缩算法是视频压缩的关键。有损压缩会影响质量,而无损压缩可在保证质量的前提下进行压缩,适用于重视质量的场合。
数据结构教材重点讨论了哈夫曼编码(Huffman Coding),它采用可变字长编码(VLC),对出现频率高的数据用较短编码,出现频率低的数据用较长编码,从而获得较短平均码长。哈夫曼编码要求编出的码即时可译,短码不重复长码码首,各码自然分开。
教师指导学生查阅数据压缩编码文献,对比几种无损和有损压缩算法,研究其应用。自主学习分析各算法的压缩率和时间。通过研究,学生能根据不同应用情况选用压缩方法,评估和比较不同方案的最佳应用场景。
在图的教学专题中,“最短路径”是一个重要的知识点,最短路径问题是在赋权图中两个节点间找最小权路径。教材重点介绍了两种常用算法:①Dijkstra 算法,从起点采用贪心策略扩展到终点,适合有权图单源最短路径;②Floyd算法,求图中所有点的最短路径。
教师在教学之初可提出这样的问题驱动教学:“如果你计划去广州及周边城市旅游,如何安排行程以降低成本?”从问题出发,能激发学生的思考兴趣和学习投入,提高学习效率。学生在教师和课题组协助下查阅资料,重点研究Dijkstra 算法及其应用场景。该算法已广泛应用于大型网络路由设备,也可用于邮政、物流、管道布线等领域,由此引导学生深入研究和思考。实践证明,科教融合的问题驱动教学可以有效激发学生的思考兴趣,增强其知识应用能力。
实践教学是课堂教学的重要环节,在科教融合的数据结构实验中,首先要完成较简单的验证性实验,验证性实验主要验证课堂理论教学内容,包括基本数据结构和基本算法实现。在完成验证性实验的基础上,还要补充一些设计性实验选题,其实验内容紧密结合教师的科研课题,要求学生能够灵活运用基本理论知识,进行数据结构的综合设计和算法实现,解决科研中遇到的实际问题,目的是培养学生分析和解决问题的能力、综合程序设计能力、创新能力。教师提供一定数量的实际科研问题,明确任务需求。学生根据选题分成小组,在开发小组长的安排下分工合作,制订开发计划,协作完成设计性实验任务。数据结构设计性实验内容安排如表2 所示。
表2 数据结构设计性实验选题
课程组在数据结构科教融合课程教学改革中,获得了以下主要经验:
①建立了社会需求导向的应用型科教融合新理念。针对学校地理位置优势,人才培养重点是服务粤港澳大湾区发展和信息化产业,服务政府决策。是否能在地方产业发展和技术进步中起引领作用,是判断一个学校、专业是否有影响力和办学成功的关键。因此,在课程建设中树立以社会需求为导向的教科研理念。根据学院情况,将科研由理论型转为应用型,主动融入产教环节,解决实际问题,建立产学研协同机制。积极引入企业资源,与华为公司开展深度合作,成立“华为创新班”,共同修订课程大纲,将公司的最新科研成果融入教学。
②建设了适应科教融合的教研团队。组建优秀的师资队伍是实施科教融合的重要前提。在科教融合理念指导下,学校建立了年龄、职称、专业互补,专兼职比例适当的创新课程团队。完善教师考核体系,提升科教成果权重;增强激励,提供科研支持;引导教师将科研成果应用到教学设计,建设前瞻性教学资源,推动创新人才培养。
③深化适应科教融合的课程改革。全面修订课程教学大纲,利用科教平台重构教学内容和活动。依托学习通和在线考评系统打造科教融合的学习空间,采用线上线下交叉的教学活动。教学内容除包括数据结构的经典知识,还增加了并行计算、压缩算法等科研内容,以行业需求为导向。采用混合教学法满足学生的个性化需求,培养其解决复杂问题的能力。改革评价方式,形成多元立体的评价体系。发挥学生特长,培养其团队合作意识。
本文结合计算机专业人才培养的需求,将学科前沿、动态以及教师相关领域的科研成果融入数据结构课程教学。课程教学团队多年来坚持“教学和科研有机统一、互相融合”的理念开展课程教学,以实际前沿问题为导向,学生在教师指导下主动参与课堂教学过程和科学研究过程,使学生自己去发现问题、提出思路、解决问题。引导学生进入科研课题、专业实验室和科研团队,培养其创新能力,强化科研的育人作用,激发学生的专业学习兴趣。未来,课程团队将继续推动科教融合教学改革,将科研融入教学,服务教学,培养粤港澳大湾区软件发展所需的新世纪创新人才。