《算法与数据结构》课程教学大纲.docx
算法与数据结构课程名称:算法与数据结构(Algorithms and Data Structure)课程编码:1501ZY037课程类别:专业基础-必修学分:2.5分总学时:40学时,其中,理论学时:28学时;上机学时:12学时 适用专业:电子信息工程 先修课程:C语言程序设计 一、课程性质算法与数据结构是电子信息工程专业的一门专业基础必修课,具有很强的实践性。通 过课程的学习,帮助学生建立算法与数据结构的概念,掌握算法与数据结构的基本设计方法和基本 分析方法,着重培养学生育树实际电子信息系统的软件模块进行抽象建模和分析系统中复杂工程问题的 能力,为学习后续专业课程及从事计算肱沸领域的工作打T坚实的理论基础。 二、课程目标(-)育人目标从培养学生的辩证思维方式、社会责任、工程伦理、爱国教育等方面入手,将与人要素 融于算 法与辘结构激呈教学,通过引入计剿科学领域科学家故事和算法与缄结构中的 典型案例,重点培养学 生刻苦求学、追求真理、严谨踏实、勇于创新的优秀品质,同时培养 学生树立正确的人生观、价值观,引 导学生树立正确的道德意识和法律意识。(-)知识和能力目标具体目标如下:(1)掌握算法和数据结构的基本概论、基本理论等基础知识,能够将其应用于电子信 息系统单元的软件分析、设计和仿真(毕业要求1.3);(2)针对实际应用场景,选择合理的逻辑与存储结构、设计并实现相应的算法,并对 算法进行分析与评价,达到解决实际问题的目的(毕业要求3.2)。课程目标与毕业要求指标点对应关系课程目标毕业要求指标点课程目标11.3能运用计算机相关基础知识对电子信息系统单元模块进行推演与分 析。课程目标23.2能够根据电子信息系统特定性能指标需求设计系统的各单元模块。三、基本要求本课程的教学是以电子信息系统的软件模块开发为背景、以几种经典数据结构为主线, 讲述软件模块开发中的基本数据结构、基本算法和算法性能的分析方法,使学生理解和掌握软件模 块开发中各种常见的数据结构及其算法。本课程主要内容包括线性表、栈和队列、串 和数组、树、图、 查找和内部排序等章节。教学过程中要注意与先修课程基础知识的联系,掌握算法与数据结构的基本概念、基本 设计方法、基本分析方法。持续改 进方法八、教材和参考书1严蔚敏,李冬梅,吴伟民.数据结构(C语言版)(第2版)M.北京:人民邮电出版社,2015年.2算法与数据结构实验指导书.自编,2017年. _3李冬梅、张琪,数据结构习题解析与实验指导,人民邮电出版社, 2017 年4严蔚敏,吴伟民著,数据结构题集(C语言版),清华大学出版社 ,2011 年5谭浩强著,C语言程序设计(第三版),清华大学出版社,2005年在线性表、栈和队列、树、图等典型数据结构的讲述中,注意培养学生综合运用所学知 识的能力, 掌握存储结构的设计方法,掌握基本算法的设计与分析方法,能够对软件设计中 的问题进行推理和分析。掌握查找和内部排序的基本方法,并能够更加时间应用场景的需要,选择并设计合理的 查找与 排序算法。在上机中,应结合实际应用场景需求,能够设计算法与程序,并对上机结果进行评价。三' 教学内容分章节说明教学内容,课时安排,并说明教学重点、主要教学模式(包括授课、自学、 实验、课堂讨论、作业等)。章 节教学内容学时思政要素教学模式对应课程 目标1绪论2通过计算机科学发展史激发学生刻 苦钻研、用于创新的精神,通过科学 家的事迹激发学生的爱国情怀和奉 献精神。课堂授课,课后练习2 题12线性表6辩证思维:尺有所长寸有所短,读写 性能和插入删除性能间的相互制约关 系。课堂授课,课堂讨论、 课后练习4题,上机一、1/23栈和队列4通过队列数据类型的讲授,使学生建 立对规则的遵守,要学会遵守制度、 敬畏法律,为自己的行为负责,树立 正确的价值观和人生观课堂授课,课堂讨论、 课后练习2题,上机14串和数组2以物以类聚、人以群分,近朱者赤、 近墨者黑的思想,鼓励学生多与正能 量的人交往,树立正确的社会价值取 向。课堂授课,课堂讨论、 思考题15树和二叉树5教导学生们在做事时要抓住事物的 主要矛盾,分清主次。课堂授课,课堂讨论、 课后练习4题,上机四1/26图4通过图的算法的讲授,让学生了解编 程开发规范的重要性,培养学生的职 业素养,体现工匠精神。课堂授课,课堂讨论、 课后练习3题,上机 五1/27查找2辩证思维:尺有所长寸有所短,顺序 查找和折半查找适用于不同的场景。课堂授课,课堂讨论、 课后练习2题1/28 33辩证思维:尺有所长寸有所短,对比 各种排序算法的优缺点和适用范围。课堂授课,课堂讨论、 思考题,上机六1/21、数据结构的基本概念;2、数据结构发展历史;3、算法描述和算法分析。本章重点:了解数据结构发展历史;掌握数据结构通信基本概念。能力:掌握算法描述和分析基本方法,能够对软件模块进行算法描述和分析。 第二章线性表1、线性表的逻辑结构;2、线性表的顺序存储结构;3、线性表的链式存储结构;4、线性表的应用举例。本章重点:理解线性表的逻辑结构和存储结构;掌握线性表的顺序存储结构和链式存储结构。能力:能够针对实际应用场景,选择合理的顺序或链式存储结构,并设计算法。 第三章栈和队列1、栈的定义、顺序存储结构及其操作;2、栈的链式存储结构及其操作;3、队列的顺序存储结构及其操作;4、队列的链式存储结构及其操作;5、循环队列。本章重点:理解栈和队列的定义,理解循环队列的定义;掌握栈的顺序存储结构和链式存储结构,掌握队列的顺序存储结构和链式存储结构O能力:能够根据实际应用需要,正确选择栈或者队列存储和处理数据。第四章串和数组1、串的定义、存储结构及其操作;2、数组的定义、存储结构及其操作。本章重点:了解串和数组的定义;理解串和数组的存储结构;掌握串和数组的操作。能力:能够应用字符串和数组存储和处理数据。第五章树和二叉树1、树和二叉树的定义;2、遍历二叉树;3、树和森林;4、哈夫曼树及其应用;本章重点:理解树和二叉树的定义,理解树和森林的定义;掌握二叉树的遍历方法,掌握二叉树与树的相互转换方法,掌握哈夫曼树的构造 方法及其应用。能力:能够根据实际应用需要,正确选择树存储数据,并设计出相应的算法。第六章图1、图的定义和基本术语;2、图的存储结构;3、图的遍历;4、图的应用;本章重点:理解图的定义和基本术语;掌握图的存储结构,掌握图的遍历方法,掌握图的应用。能力:能够根据实际应用需要,选择图存储数据,能够理解图的基本算法。 第七章查找1、查找的基本概念;2、线性表的查找;3、树表的查找;4、散列表的查找;本章重点:了解查找的基本概念;理解树表的查找和散列表的查找方法;掌握线性表的查找方法。能力:能够针对实际应用场景,选择并设计合理的查找算法。第八章内部排序1、基本概念与基本方法;2、插入排序;3、交换排序;4、选择排序;5、归并排序本章重点:了解内部排序的基本概念和基本方法;理解插入排序、交换排序、选择排序、归并排序。能力:能够针对实际应用场景,选择并设计合理的排序算法。五、上机内容与学时分配上机项目与类型序号上机项目学时上机性质验证综合设计1线性表的存储结构定义及基本操作22线性表的综合应用2q3栈和队列的定义及基本操作2d4二叉树的定义及基本操作25图及其应用26查找和排序算法的实现2上机一线性表的存储结构定义及基本操作1 .目的要求掌握线性表的逻辑特征;掌握线性利耐存储结构的特点,寰懈掌握顺序表的基本操作; 神掌握线性表的链斯储结构定双基本操作。2 .主要上机软件Visual Studio o3 .实验内容编程实现线性表的顺序存储结构定义、顺序存储结构的基本操作、顺序存储结构应用; 编 程实现线性表的链式存储结构定义、链式存储结构的基本操作、链式存储结构的应用。上 机二线性表的综合应用1 .目的要求掌握顺序表和链表的概念,学会对问题进行分析,选择恰当的逻辑结构和存储结构;加 深对顺 序表和链表的理解,培养解决实际问题的编程能力。2 .主要上机软件Visual Studio o3 .实验内容编程实现一元多项式的表示及其基本操作,包括建立、销毁、输出、加法、减法、乘法 等操作上机三 栈和队列的定义及其基本操作1 .目的要求熟悉栈的定义和基本操作;熟悉队列的定义和基本操作;掌握递归和非递归算法的实现技术和 实际应用;加深对栈结构的理解,培养解决实际问题的编程能力。2 .主要上机软件Visual Studio o编程实现栈的顺序存储结构定义、顺序存储结构的基本操作、顺序存储结构应用;编程 实现 队列的链式存储结构定义、链式存储结构的基本操作、链式存储结构的应用。上机四二叉树的定义及基本操作1 .目的要求熟练掌握二叉树的二叉链表存储结构;掌握二叉树的非线性和递归特点;熟练掌握二叉 树的递归操作的实现方法;加深对二叉树结构的理解,逐步培养解决实际问题的编程能力。2 .主要上机软件Visual Studio o3 .实验内容编程实现二叉树的二叉链表存储结构及其基本操作,利用二叉树的二叉链表存储结构编写程 序解决实际问题。上机五图及其应用1 .目的要求熟练掌握图的两种存储结构(邻接矩阵和邻接表)的表示方法;掌握图的基本运算及应用;加深对图的理解,逐步培养解决实际问题的编程能力。2 .主要上机软件Visual Studio o3 .实验内容编程实现图的邻接矩阵存储结构的定义、基本操作和应用;编程实现图的邻接表存储结构的 定义、基本操作和应用。上机六查找和排序算法的实现1 .目的要求掌握有序表、无序表查找的基本思想及存储、运算的实现;熟练掌握常用排序算法的基 本思想及实现;加深对查找和排序算法的理解,逐步培养解决实际问题的编程能力。2 .主要上机软件Visual Studio o3 .实验内容编程实现常见的查找和排序算法,并对结果进行分析,记录相关上机结果,并能对上机 结果 有预期的正确判断。六、教学方法为了提高教学质量,培养学生的理论分析能力和实践动手能力,采用课堂讲授与学生讨 论相结合 、理论教学和上机实践相结合等多种教学方式方法,达到掌握算法与数据结构基本理论和基本动手实践能 力的教学目标。主要教学包括课鳏学、课堂研讨、随螂习和课后 练习、上机蝴。1 .课堂教学课堂教学以“互动式”方法为主导,在这一教学环节,学生以听课为主,并参与讨论, 每次 课程开始或课程中间进行提问,课后留有思考题。教师主要讲授课程的基本概念、基本理论和基 本方法。同时,有意识设计一些讨论性问题,引导学生运用已有的知识进行思考。 本课程采用多 媒体教学手段,注重提高课堂效率。2 .课堂研讨本课程采用研究型教学,授课过程中采用教师引导、学生自习、课堂讨论、教师总结、 课 后答疑的教学方式。3 .随堂练习和课后习题课堂上,教师结合教学内容给出针对性的习题,学生当堂完成,通过随堂练习加深理解巩固知 识。对于本课程的重要知识点和重难点,适当布置课后习题,使学生进一步理解和巩固,培养学生 分析问题和解决问题的能力。4,上机实操算法与数据结构是一门理论联系实际的课程。为了加深学生对理论教学内容的理解、训 练学生 的动手能力和综合分析能力。本课程配合理论学习外,安排有12学时的上机。上机要求学生在教 师的指导下,能独立编程完成各种常见数据结构及其基巾操作、常见的查找与排序算法。七'考核与评价方式及标准1 .考核标准与成绩评定课程考核由平时成绩、期末考试两个部分进行成绩评定。平时成绩(百分制),包括课堂测验、作业、上机等。平时成绩评价标准基本要求评价标准优秀(0.9-1)良好(0.7-0.89)合格(0.6-0.69)不合格(0-0.59)掌握算法与数据结构的基本概 念,线性表、栈和队列、树、 图等典型数据结构的逻辑结 构、存储结构、基本算法及其 典型应用方法,掌握查找和排 序的基本概念和典型实现方 法。概念清晰,分析得 当。方案能够解决 问题,思路清晰, 算法设计正确。独 立完成作业,书写 工整、清晰符合规 范。主要概念清晰,但 部分分析有误。方 案主要思路、算法 设计正确。独立完 成作业,书写清晰, 算法描述符合规 范。基本概念基本 清晰。尚能制 定方案。极小 部分抄袭,算 法描述基本规 范。基本概念未掌 握。不能制定 方呆。大部分 抄袭或者作业 不完整或未 交。上机成绩评价标准基本要求评价标准优秀(0.9-1)良好(0.7-0.89 )合格(0.6-0.69 )不合格(0-0.59)目 标 1/2能够根据上机项目14 的内容开展上机,观察 现象,分析结果;根据 上机项目5、6的内容, 给出上机方案,并开展 编写程序,得出有效实 验结果。能够根据各种数 据结构的逻辑结 构、存储结构及基 本算法开展上机, 上机结果正确,结 果分析全面。能够根据各种数 据结构的逻辑结 构、存储结构及基 本算法开展上机, 上机结果较正确, 结果分析较全面。基本上能够根据 各种数据结构的 逻辑结构、存储结 构及基本算法开展上机,上机结果 基本正确,结果分 析比较全面。基本上能够 根据各种数 据结构的逻 辑结构、存储 结构及基本 算法开展上 机,上机结果 不正确,结果 分析不全面。期末考试成绩:70%,考试方式为闭卷,题型包括:单选题、填空题、判断对错题、简 答题、应用题。课程考试考核内容与要求基本要求评价标准比例( %)优秀(0.9- 1 )良好(0.7-0.89 )合格(0.6-0.69 )不合格(0-0.59)目 标1掌握算法和数据 结构的基本概论、基 本理论等基础知识,能 够将其应用于电 子信息系统单元 的软件分析、设计和 仿真算法与数据结 构基本概念回答、 判断问题正确,算法 与数据结构的 基本原理、基本分析 方法正确,语言简 练。算法描述规 范。算法与数据 结构基本概 念回答、判断 问题较正确, 算法与数据结 构的基本原 理、基本分析 方法较正确。 算法描述较规 范。算法与数据结 构基本概念同 答、判断问题基 本正确,算法与 数据结构的基本 廨1、基本分析 方法基本正确。算法描述基本规 氾。算法与数据结构 基本概念回答、 判断问题错误较 多,算法与数据 结构的基本原理 、基本分析方法 不正确。算法描 述不正确。600标2针对实际应用场景, 选择合理的逻辑 与存储结构、设计并 实现相应的算法,并对 算法进行分析与 评价,达到解决实际问 题的目的。针对实际应 用最,选择合理 的逻辑与存储结构 、算法设计正确, 算法分析与评价 正确针对实际 应埸景,选择 合理的逻辑 与存储结构、 算法设计较 正确,算法 分析与评价 较正确生十对实际应用£ 景,选择基本合 理的逻辑与存 储结构、算法设 计基本正确,算 法分析与评价 基本正确针对实际 应场景,选择的 逻辑与存储 结构不正确、算 法设计确算 法分析与评 价不正确40注:该表格中的比例为期末考 试试卷成绩比例。成绩评定 为:考试成绩*70%+平均平时成 绩 *30%。2 .课程目标达成评价算法与数据结构课程目标达成评价分析报告一、课程基本信息课程名称算法与数据 结构课程性质专业基础, 必修学时学分40/2.5开课学期专业班级考核方式考试,闭卷任课教师:评价人员:课程组长,命题教师,阅卷教师二、课程目标达成评估课程目标支撑指 标点课程目标评价数据源评价依据分值平均分达成度值评价方式毕业要求1.3能 运用计算机相关 基础知识对电子 信息系统单元模 块进行推演与分 析。目标1:身瞰据结构的基本概论 、基本理论等基础 知识,能够将其应 用于电子信息系 统单元的软件 分析、设计和仿真O期末考 试:算法与数 据结构的 基本知识 (60 分)T10=60 试题构成说 明Tl=421*0.7 + , *0.31010=0.74平时作业A10=100A 1=84毕业要求3.2能 够根据电子信息 系统特定性能指 标需求设计系统 的各单元模块。目标2至十对实际应 用场晟选跆理的 逻辑与存储结 构、设计并实现相 应的算法,并对算 法进行分析与 评价,达到解决实 际问题的目的。期末考 试:算法 与数据结 构的设计 与分析(40 分)T20=40 试题构成说 明T2=32-*0.7+ 2 *0.32020=0.81平时作 业A20-100A2=84三、课程评价与分析考核结 果总结