数据结构与算法教学大纲.docx
数据结构与算法课程教学大纲一、数据结构课程说明课程代码:Data Stucture所以(二)课程英文名称:(三)开课对象:电子专业的本科生课程性质:专业翱课(W)是计瓣业的期翱谒期。是计I脚幼林专业的核心课科 也剧卅就1蹊专蛹淑舞相概程蹴导课程为(主魏述算法胡微解棚幽®理和 由于本飕鼾嬲酸调论翱8, 械程的学习邂也是算法打地胡雕力的c霜,计就I基碘。(五)教学目的:通过本雌的物,鲜蟒逊蟠辘缔岫避鞫辆飕堪岫林船以及有关算法睛林的、朗的髀町技能躺敲阿翱脚,屏耳糠作系缴褊鞭1和做蟒鞅程奠定基比(六)教学内容:本黯麴蹦、蛔、脾驰鼠跳 »Wo嬲学略愀使学捌琳章撕嬲基本熟。艰隈1要的教物节,狮顺于灌机(七)学时数学分数及学时数具体分配学时数:68学时学分数:4学分学时震体分酣教学内容讲授实验/实践合计第一章绪论224第二章线性表8210第三章栈和队列8210第四章串数组和广义表8210第五章树和二叉树8412弟八早图10212第七章查找10212第八章排序10212合计68_2088(八)教学方式以多端橄学手螃瓢茹螺鞘学。(九)考核方布喊绩记载硼翻城榭。严格考核学生出鼬靓达到耨I嬲的频量取销考试资格。豁徽根刷成绩和麻成舜院平时徽占狼,麻徽占 瞅Q二、讲授大纲与各章的基本要求第一章 绪论教学要点:2.1 直接插入排序(应用)2.2 希尔排序(应用)3、交换排序法3.1 冒泡排序(应用)3.2 快速排序(应用)4、选择排序法4.1 直接选择排序(应用)4.2 堆排序(领略)5、归并排序法1 .1两个有序悯酬并(应用)52 一趟归并排序懒略)6、基数排序法6.1 多关犍字排序懒略)6.2 链式基数排序懒略)7、各种内部新法的比作识记)8、排序操作应用举例(领略)三、推荐教材和参考书目1、微雕构,晋良颖编,第一版,人趟电出版社,2022年2、微解构辅导与习题集,付敢、张宇宏、雕赫,第一版,人聊釉版社,2004 年3、教擀构,严蔚敏、吴伟民,第一版清华大学出版社,2004年4、数解构,翻、罗宇缄第一版犒触大学出版社2004年5、微据结构课程诊计,苏仕华,机械工业出版社,第一版,2005年6、计算机程序设计技巧,D.E.Knuth,第一版,国防出版社,2005年7、FUNDAMENTALS OF DATA STRUCTURES,FULLS HORO-WITZ&SARTAJSAHNT,程惟宁译,新时代出版社,2022年蒯樽的教学使学生初步了解的幡楣的,掌殿麟构的M颔及分类、蝴螺®面与觌嬲舲、醐触醐腺算蜻的度 量、算法的存储空间需求。1、使学生准确掌握数撒油的概念2、使学生娜触教用类型的罚与实现。3、使学生充分螂算法跚念4、明确算法的特也5、明确算法的目标。6、熟蒯掌握算法效率的度最7、掌握算法的存储空间需求。教郛擞:4学时教学内容:第一节融结构懒第二节魏翎雒稔1、基橇t二、魏结构及分类三、辘缔舞戳内容第三节辘翅蒯象辘麴一、魏麴二、抽象瓣类型第四节算海噂涉淅考核要求:1、教解构概述(识记)2、数据结构的概念2.1 基本概念(识记)2.2 数据结构及分类(识记)2.3 数擀构课程的内容(血)3、数据类聊抽象数据类型3.1 数据类型(领略)3.2 抽象教据类型(领略)4、算法和算法分析(应用)第二章 线性表教学要点:嬲漳的教学使学物步了解的表的缁礴点掌勘孵的和献的存辘各自髓嬲雌腺懈作,以及球的雕翱各种球樵作;期循环球股双向链表。1、使学生准解徽性表的基概念2、使牲掌撕序存雌辘总3、使学生掌握链式存输锻性表。4、明确广义麹定义。教学时数: 1。学时教学内容:第一节雌表的粼定义一、线性表的定义二线隰的基械作第二节辘糊新薪独现一、顺序表的存构二、骊趟基械作三恻裱的其他算法举例第三节搬的娥存幅构及其谟-鞫表和指针二、w»w三单链知其麒作四、循环球五、双向球考核要求:1、线性表的类型定义1.1 线性表的定义(应用)1.2 线性知基械作(应用)2、线性表的顺序表示和实现2.1 骊表的存储结构(应用)2.2 瓣表的基本麻(应用)2.3 骊趟其他算法举例(应用)3、线性表懈接存解构及其运算3.1 单链麹指针(应用)3.2 单球的基本操作(应用)3.3 鞫表的其他操作(应用)3.4 循环球(领略)3.5 双向球(领略)O栈和队列教学要点理雌和队列的操作特点;通过本章的教学使学生初步掌嬲队痂裱示和实现;解柄队列以及其相述侑卜使学生准胸掌握根和队列的表示和实现。2、使学生韩姗队列的操作特焉3、使学生螂翩W以及其相关操作。教期擞:8学时瓣内容:第一节 栈一、撕定爆樵作二枚的林前实现鬃节榭哪举例O 队列一、队列的定义二、队列的耘和实现第四节 BJMWI考核要求:1、 栈1.1 撕定义及基本操作(应用)1.2 枝的标和实现(应用)2、我的应用举例像用)3、 队列3.1 队列睚义(应用)3.2 队列的表示和实现(应用)4、队列的应用举例(应用)第四章 串、数娜旷嫌教学要点:珊挪厥腓蒯样的教学使学生嬲螂串的存畿构; 构;掌握可轴璘存储;螂臃阵以及稀疏辘。1、使学生麟理辘的端稀构。2、使学生理辘的相关操作。3、使学生掌握麴的存麟构。4、掌麟阵的蹄存储。5、理解麟拒靶牖藤用教学时数:8学时教学内容:第一节串的定义和操作第二节用的存辘一、串糠序存储二、串的粉瞄储三、串横辘第三节串的模式既髓一 、 Brute-Force 算法二 KMP算法第四节串懈作应用翻第五节数组一、辘的雕二、»ow三麴的应用翻第六节矩阵的蟒存储一、特藏阵的璇储二、稀雕阵及存脩三、三元组表四、十蟹表考核要求:1、串的定义和榭屈用)2、串的存储结构2.1 串的瓣存储(应用)2.2 串雕分配存储(领略)2.3 辘链式存储(领略)3、辅一地配算法3.18 rute-Force 算法(颔略)3.19 MP算法(领略)4、串的操作应用举例做略)5、 数组5.1 数组的概念(应用)5.2 辘脯序存解构(应用)5.3 数组的应用举例像略)6、矩阵版缩存储6.1 麟麟的滕存储(应用)6.2 稀疏邮及存储(应用)6.3 三元组表(应用)6.4 十字球(领略)fit郴二叉树教学要点嬲掌握二叉棚勺性质;蝶郴I觥跚颔贿赣构;掌握掌蒯稳的教学使学物舞翻和二骗腿本定义二对胞存雌;掌颤二叉楙啜索二叉桃蹒聃二遍雕摭螂郴森棚觎;掌撕关曼顺其就;1、使学生搬翱赧二耐腿本定义2、使学生熟练掌握二财的性质。3、使学生鞋二购的存徽机4、掌频历二叉翩1舞二皿5、掌麟夫曼椒其应用。教雌 10学时教学幡:第一节潮I叙以牌林语-、船I定义二、树的基林语第二节 二 二二骗的定郑基林语 二、二期的几健本酿 三、二财的存解构第三节遍历二期一、二购幽肪法 二、二叉病历算法懒 三、二购通施解例 四、线索二财第四节树和森林一、那森林的存瑞构 二豳春棚I觎第五节 树聊洲 二集合的标二、辙问题第六节哈夫翻触用一、哈夫麹的基搬二判定树三、哈夫曼编码要求:1、树的定义以及基本术语1.1 树的定义(识记)1.2 醐基林语(识记)2、二叉树2.1 二购的定期基林语(识记)2.2 二期的几个林性质(应用)2.3 二叉躺存解构(应用)3、遍历二叉树3.1 二叉树的遍历方法(应用)3.2 二跑遍历算法描遍应用)3.3 二跑遍历应用举例(应用)3.4 线索二叉虫应用)4、 树和森林4.1 郴森椭存解粗应用)4.2 树和森林的遍历(领略)5、树的应用5.1 集合的表示便略)5.2 等价问题(领略)6、哈夫曼树及应用6.1 哈夫曼树的基本概念(识记)6.2 判定树(应用)6.3 哈夫曼编码(领略)期八早 图教学要点(邻接期和了解拓脚蒯本鞠教学解物步麒酬定翅术谣»»»W);嬲掌握醐迪励法:谶觥螺就度减糕;理能的豌性飕;理解无向图的睡分量和生蒯;辘最小生;了解有向无环图及其应用序;了解施耀;OWB1、理解图的定义楙语;2、嬲辘醐存触构(邻觑隋啷接表);3、嬲掌雕胸历施深度优先懒就度觥糕;4、螂醐连通性问题;5、掌握无向阳的连通分量和生成桃6、掌握最小生成树;7、了解有向无环国及其应用;8、了懒朴排序;9、了解关键路径;教物数 10学时教学内容:第一节 图的雕一、图的定义和楣二、图有物语标例第二节图的存解构一、雕辘镯麻二、图的蹴表存瀛三、醐粒就第与 图随历二深度觥搜索觎二、广度优辘索版第四节颜岫撮小野涮一、克鲁解尔算法二、普里姆算法第五节 嬲海一、例点最蝴径二每一雌间的最瞬第六节拓脚序第七节解径考核要求:1、图的概念1.1 图的定义和术语(识记)1.2 图有关术语的神(识记)2、图的存储结构2.1 图的邻接矩阵存储标(应用)2.2 图的邻接表存储表示(应用)2.3 图的建端法(领略)3、图的遍历3.1 深度优先搜索新(应用)3.2 广度优趟索遍历(应用)4、睡网的最小生删4.1 克鲁斯卡尔算法(应用)4.2 普里姆算法(应用)5、最短路径5.1 单源点最短雒(应用)5.2 每一对顶点间的最短路论领略)6、拓扑新(领略)7、关键路径(领略)觥辜 S教学要点:折糙我、分嫦找;t潮情的教学使学生嬲f麝糙膜的骊表糖找、 翻耀赚;握理制;WfcM鞋懦表;和姆冲突的旗;了解喘郁面城其分机1、席耀耀糠糊魁脑找、折半查找、僦酸;2、掌握动态查找表;3、掌握二叉排序挑4、理解平缸叉树;5、掌握哈希表;6、掌握惴蹒的构防法和处理冲突防法7、了解懦表峭我及其分机教郛擞 10学时教学内容:第一节基本雕第二节静态查找二,楂挪基樵作二、前糙掘顺将辘三、顺序欲四、折箱找五、分块欲第三节 动箱魅一、批部的基棣作二、动楂找的二财糊三、二叉排祠四、平衡二财五、B树第四节 飘表一、散列那腌二、蹦懒旅三、处理冲突的旗四、敬赚糖挪分析五、查撅作胡翻考核要求:L基本概念(识记)2、静态查找2.1 静糙找的基本操作(应用)2.2 查找确序存储辅值用)2.3 顺序查找(应用)2.4 折半查找(应用)2.5 分块查找(领略)3、动态查找表3.1 动糖翻基本操作(应用)3.2 动糙懒二藏耨构(应用)3.3 二叉排序树(应用)3.4 平衡二叉机领略)3.58 树(领略)4、散列表4.1 散列表的雕(识记)4.2 散列函数的构造方法(应用)4.3 处理冲突的方法领略)4.4 散列表的查找和分析便略)4.5 查找操作应用翻懒略)第八章 排序教学要点:掌髓毓人排序法;掌握希尔蒯榜的教学使学物障翻靶及期檄; 排序法辘冒郴序法;掌握懒加髓;舞简单解相能; 理解懒辟法了解归并排序法;掌握各种内部排序法的比轨1、使学生准解握排制及其相翘念2、使学生掌握插入排序法。3、使学生掌握交换排序法。4、掌握选择排序法。5、了解归并排序法。6、掌握各种内部排序法耻徽7、了解夕郴序教学时数:10学时教学内容:第一节基本概念第二节插入排序法二直蹄人排序二希尔腑第三节 效骊法一、冒湖糖二、豚排序第四节 解牖去二直觥择排序二 W第五节 蝴新法一、龄有序序列的归并二、一蒯解序第六节 黝麟一、多趟翎邮二、窗酬序第七节各种内部排序法的比较第八节排飕作应用削考核要求;1、基本概念(识记)2、插入排序法