_数据结构_课程教学中的案例设计及应用_袁和金
第 16 期
90 2013 年 8 月 25 日 Computer Education
G642
袁和金
(华北电力大学 计算机系,河北 保定 071003)
针对目前数据结构课程教学中存在的理论与实践脱节,以及学生运用所学知识解决实际问题
能力不强的问题,探讨案例在数据结构教学中的作用和意义,并以图的拓扑排序算法为例详细说明案
例的设计方法和原则。
案例;数据结构;拓扑排序
0 引 言 关的结构和算法 [1] 。案例教学是一种非常有发展
潜力的教学模式,在课堂教学中,如果能够设计
数据结构是高等学校计算机科学与技术相
有具体应用背景及可满足不同层次学生需要的综
关专业的一门必修基础课,对于训练学生进行
合性案例,并指导学生对其进行积极的思考、分
复杂程序设计和养成良好程序设计习惯具有重要
析、讨论和编程实现,将会极大地帮助学生深刻
作用。它上承计算机导论、程序设计语言、离散
理解问题的原理和本质,起到举一反三、融会贯
数学等基础课程,下启算法设计与分析和计算复
通的效果。
杂性理论,是数据库、软件工程、编译原理、操
作系统等计算机专业核心课程的先修课,只要学 1 数据结构课程教学中的主要问题
生毕业后还从事与计算机软、硬件开发相关的工
作,数据结构的知识必然会或多或少地用到。此 数据结构是一门实践性很强的课程,其内容
外,该课程中的很多结构和算法也是更高层次的 涵盖了线性表、栈、队列、数组、串、树、图、
计算机应用技术领域,如人工智能、模式识别、 查找和排序等许多知识,目前的教学主要强调不
机器学习、网络信息处理、多媒体技术等课程的 同类型数据的逻辑结构、存储结构和基本运算的
根基所在。 实现。由于不同类型的结构之间相对分离,知识
目前,数据结构课程的教学多以传授知识、 点相互独立,学生在学习的过程中并不能很好地
描述抽象数据结构及其存储和算法为主,并辅以 将课程的内容连贯在一起形成一个整体。另外,
一定的上机实验。由于该课程知识点较多,且相 课堂教学中的举例一般只偏重于某个具体的知识
对独立,许多学生在学完该课程后,大都能看懂 点,使得课程综合性不够,而且与实际应用联系
数据结构的算法描述却无法针对实际问题设计相 不够紧密。学生在学习该课程的过程中并没有学
袁和金,男,副教授,研究方向为模式识别、计算机视觉,yhj_1977@163.com。
91
第第 16 16 期期 91
以致用的体会,兴趣不够,也没能形成融会贯 生望而生畏,也不便于教师在有限的课堂时间内
通、举一反三的能力。虽然该课程也安排了一定 进行充分的分析和讨论。
量的实验环节,但一般只是将所讲述内容的伪代