《数据结构IV》课程思政教学案例 ——队列的原理与应用
日期:2025-04-15  作者:孙倩   来源:  浏览量:136

 

一、基本信息表

教师姓名

(负责人)

孙倩

职称

讲师

课程团队成员姓名


学院

 

高等职业技术学院

系(部)

计算机技术

课程名称

数据结构IV

课程代码

[52001CC1G9]

学时

 

64

学分

2

课程类型

□通识必修课

□通识选修课

□学科基础必修课

☑专业必修课

□专业选修课

□其他

授课对象

22级软件专业全体

 

二、教学目标与学情分析

(一)学情分析

数据结构IV课程的授课对象是高职学生,根据以往的教学经验,学生在理论教学的课堂上专注度不高,对于复杂场景的理解度不高,因此要进行传统教学与思政元素相结合的方式进行讲解,要与时俱进,进一步挖掘与专业知识点密切相关的思政元素,形成完整的课程思政教学设计。在思政课程试验过程中,还要避免出现学生对专业课程融入思政内容反感的情况。在课程教学设计中,贯彻“以课程思政为引领,以立德树人为根本,构建价值塑造、能力培养、知识传授三位一体”的课程建设目标,把课程打造成计算机科学与技术专业思政示范课程,培养学生的综合能力。

(二)教学目标

1、知识、能力与素质目标

知识目标:

理解队列的基本概念及其先入先出的特点;掌握队列的基本操作:入队、出队。

能力目标:

能够使用数组实现队列;能编写队列的入队和出队操作的算法;能判断和处理队列可能出现的异常情况;能计算队列操作的时间复杂度;能综合运用知识设计和实现队列程序。

素质目标:

培养学生的树立正确价值观,培养文明意识,培养公德意识,以及精益求精的工匠精神。

2、思政教学目标

引导学生树立正确价值观,培养文明意识。通过讲解队列“先来先服务”的原则,引导学生在生活中主动排队,增强公德心。

强调细节的重要性。在编码时间环节,对边界条件进行充分考虑,养成严谨的编程习惯。

增强计算机服务社会意识。通过实际案例,讲解队列在操作系统中的应用,展示计算机知识服务社会的价值。

三、教学内容设计

(一)教学重点与难点

1、教学重点

队列概念的理解及其抽象数据类型描述;

2、教学难点

队列类的描述与基本操作的实现;能够利用队列的基本操作实现队列的应用;

(二)课程思政元素

1、引导学生建立正确的价值观、人生观、世界观。树立“不积跬步,无以至千里”的规划管理意识。队列具有先进先出的特点,事物按照顺序被处理,这反映了事物都有其内在的规律。同理,从个人角度,我们的人生也需要按部就班,有计划和按顺序地前进,才能达到长远的目标。从国家角度,介绍中国高速列车的发展历程,从“补基建设”到“跨越发展”,再到今天拥有全球最长高铁网,体现了国家科技发展需要持之以恒的精神引发学生对社会资源合理利用的思考。队列可以比喻社会机会均等和公平,先到先得。公民社会需要按顺序、有秩序地参与和发展,不能无序推动。

2、增强编码细节意识,工匠精神。在编写程序处理边界特殊情况时,可以引入做事应该一丝不苟的理念,培养学生细致严谨的编程习惯和精益求精的大国工匠精神。

3、创造社会价值。通过案例讲解队列在操作系统中的实际应用,同时引发学生思考并讨论队列在其他方面是否有实践价值,激发学生的社会责任感和创新精神,要用所学知识服务人民,用技术创新提高人民生活质量,而不仅是为了个人利益。

(三)教学内容设计

1、教学内容分析

本节课程共分为5个部分,其中第23部分为重点,4部分为难点。

第一部分案例引入。通过公交乘客上车和打印机任务调度两个生活典型问题,引出有序先到先得的关键点。用排队上车的有序与无序图片强烈对比,突出有序的重要性,启发学生注重顺序。结合生活经验,讲解数据结构中的队列也具有先到先得和有序的特点,可用于有序任务调度。以生动案例为引,通过问题展现队列应用价值,最后联系队列有序特点。

第二部分详细讲解队列的概念和特点。元素在队尾插入,从队头依次删除,确保按顺序完成任务。所以,队列适合模拟排队等需要顺序处理的场景,是保证任务调度井然有序的重要的数据结构。

第三部分讲解队列的基本操作。通过编程演示的方式讲解队列的6个基本操作:置空、判空、求长度、取队首元素、入队、出队。在每个算法的异常处理位置进行详细讲解。通过在数据结构的学习中培养这种细致的编程态度,让学生养成一丝不苟的习惯。这不仅对编写优秀程序代码有帮助,也会使学生在以后的工作和生活中保持谨慎仔细的优良作风,提高学生的整体素质。

第四部分讨论讲述队列的应用。通过模拟实际生活中站台乘客上车和银行业务办理的问题以及操作系统中线程池和打印任务调度的问题,讲述队列在实际中的应用。让学生更直观地理解队列数据结构的应用价值。队列实现了任务的先到先得和有序调度,是许多实际问题的最佳解决方案。队列让生活和系统运行更井然有序。

第五部分归纳总结。分别提出队列的数据结构对个人、社会、国家上的启发。

四、教学方法与手段

1. 教学方法:

(1) 讲授法:讲解队列的概念、结构、特点等知识点。

(2) 讨论法:组织学生讨论队列的应用场景。

(3) 案例法:利用生活案例介绍队列的先进先出特性。

2. 教学手段:

(1) 讲述:清晰讲解队列相关概念,重点强调先进先出。

(2) 板书:在黑板上绘制队列结构和操作过程。

(3) PPT:制作包含队列图解、代码和动画的PPT

(4) 图片和视频:展示多任务使用打印机、公交站台乘车等队列图片和视频。

(5) 实验:编写程序,模拟多线程任务调度的队列应用。综合运用各种教学方法和手段,既注重队列知识的系统讲解,又增强学生的直观理解,能更好地帮助学生掌握队列的概念和应用。

五、教学过程

课前:预习队列相关内容,了解基本概念。观看教师提供的队列相关视频。

课中:

(1)案例引入(5分钟)

【思政引入】思考:为什么拥挤的公交站点无法通行?(引出有序才不会引起混乱的规则)

首先从现实生活中的两类问题出发:一是在拥堵的公交站点,大量乘客要上同一辆公交车,如何提高上车效率?二是多人在同一台打印机上打印任务,打印机该如何调度处理?这两类问题引出了两个关键词:有序先到先得。拥挤的公交站点需要排队上车,打印机需要按任务到达的时间顺序处理。为此,对比两张图片的不同场景:一张是擅自插队导致混乱的图片,另一张则是排队上车井然有序的图片。图片的强烈对比突出了有序的重要性。启发学生要在生活和工作中注重顺序,做事情要井然有序,按照一定顺序执行,才能高效完成工作。在数据结构中,队列具备这种先到先得和有序的特点。

(2)队列原理讲解(10分钟)

①队列的基本概念(5分钟)

②提出队列的特点--先进先出(5分钟)

3)链式队列基本操作讲解(40分钟)。

编写链式队列的完整代码实现,包含队列的6个核心操作函数,置空(5分钟)、判空(5分钟)、求长度(5分钟)、取队首元素(5分钟)、入队(10分钟)和出队(10分钟)。

【思政引入】当针对队列的实现代码编写边界条件的判断时,告诫学生程序员在编写代码的时候要非常小心谨慎,需要考虑到各种细节和特殊情况,做到一丝不苟,不能有任何疏漏。引导学生无论是做人还是做事都要一丝不苟,培养学生精益求精的大国工匠精神。

(3)队列应用讨论&讲解(30分钟)。

①教师课前准备好模拟站台乘客上车的代码,课上进行讲解(10分钟);

②教师课前准备好模拟线程池的代码,课上进行讲解(15分钟)。

③讨论(5分钟):队列是否存在其他应用?如何实现?

(4)案例归纳(5分钟)

【思政元素】从个人角度看,我们做事要有条不紊,有计划有步骤,就像队列一样一步一个脚印。积少成多,持之以恒,才能取得成功。从社会角度看,社会需要秩序井然的发展,大家有序参与、不插队不抢占,共同推动社会进步,就像队列一样秩序井井。从国家角度看,科技强国建设需要坐地起典的精神,一砖一瓦排列有序,持续不懈地积累,才能取得重大科技成果。

队列的有序的特点启示我们,无论做人、做事还是做国,都需要秩序井然、一步一个脚印,才能成就伟业。秩序是社会进步的阶梯,也是个人成长的钥匙。让我们像队列一样,井然有序,建设祖国。

课后:

按照课中学生讨论结果,让学生实现自己想到的队列应用,或者实现模拟银行业务办理、模拟打印任务调度的代码。

评分标准:

5分:代码能够正确实现需求,符合编码规范,注释完整,有完整运行结果。

3-4分:代码能够基本实现需求,部分符合编码规范,注释较为完整,有较完整运行结果。

1-2分:代码能够正确实现部分需求,部分符合编码规范,注释不够完整,有运行结果。

0分:未能完成作业。

六、教学评价

1.教学方面:队列的基础知识比较容易理解,基本操作也比较简单,但是在应用层面学生表示代码能看懂,但是编写起来较为困难,学生掌握程度较低。分析学生编程遇到的问题,一方面是对先修课程掌握程度不够,熟练程度不够;另一方面体现在算法思想上理解不够透彻。在今后的课程中要多融入先修知识的回顾,同时课后补充一些在线算法编程题目,让学生沉浸在编程的大环境中,这样才能有所突破。

2.思政方面:本节课通过具体案例,培养学生的规范意识,鞭策学生在学习和生活中要有锲而不舍的精神,在程序实践中能够多一些耐心和细心,培养精益求精的工匠精神,当然在课程与思政的融会贯通方面还是有一定欠缺,后期将继续完善,落实润物无声、立德树人根本任务。

七、思政教学反思

(一)思政教学的意义与价值

从思想政治教育的视角,队列这一数据结构及其应用案例,能够通过模拟生活场景,启发学生增强团结协作意识,理解守序遵纪的重要性,培养学生耐心积极的品质,并从中感悟到个人行为对整体环境的影响,进而主动践行社会主义核心价值观,成为具有正确认知与良好品德的社会主义建设者和接班人。

(二)思政教学的成效和特色

在队列的应用案例中融入思政教育,使学生更能深切直观体会到队列的学以致用,降低课程的抽象复杂度,通过生动的典型案例,引导学生在学习中感悟公德意识和奉献精神,从整体与协作的视角思考问题,培养勤奋好学的品质,取得了显著的教学效果。

以下是学生对队列应用方面的总结与分享:

(三)思政教学的改进措施

鼓励学生将队列应用到生活实践中,并归纳总结感悟,形成学习反思,以课程报告或调研报告的形式提交,并开展优秀案例的分享与答辩,组织学生开展相关主题的社会实践活动,将知识内化为行动。

八、教学资源拓展

1、队列知识点讲解

https://www.bilibili.com/video/BV1Lv4y1e7HL?p=92

https://www.bilibili.com/video/BV1v4411n7hg/?spm_id_from=333.337.search-card.all.click

2、队列的应用举例

https://www.bilibili.com/video/BV14K4y1T7Nb/?spm_id_from=333.337.search-card.all.click

九、其他


主要参考资料如下:

1、教材第3

2、课前预习PPT

3-1队列.pptx

3、微课视频:

3-1队列的概念.mp4

3-2顺序队列与循环队列.mp4

4、代码

3-1 LinkQueue/LinkQueue.java       //队列基本操作
3-3 QueueApplication/BusSolution.java     //模拟公交站乘客上车
3-4 QueueApplication/ThreadPool.java      //模拟线程池
 


收藏本页