- 9
- 0
- 约5.97千字
- 约 8页
- 2019-07-21 发布于江西
- 举报
《算法设计与分析》教学大纲
一、课程概述
算法设计是计算机科学的一门分支学科,是软件技术的一个重要方向。算法设计既是软件设计的关键,也是培养学生成为未来软件工程师所不可或缺的一门专业知识。
算法设计与分析课程将高级语言程序设计、数据结构和计算方法等内容紧密地结合在一起,全面培养学生分析问题、解决问题的能力。这门学科的重点是在培养和培训学生学会经典算法方面的知识与应用,因此它对学生的专业发展具有极其重要的意义。
算法设计与分析的先修课程是高级语言程序设计、数据结构、高等数据、组合数学。
二、课程目标
知道《算法设计与分析》这门学科的性质、地位和独立价值。知道这门学科的研究范围、分析框架、研究方法、学科进展和未来方向。
理解这门学科的主要概念,尤其是算法的时间复杂度和空间复杂度。
初步学会运用数学的方法推导和证明算法的时间复杂度和空间复杂度。
掌握常用的经典算法,培养学生在软件设计时对算法设计的重视,并能够把所学的知识应用到具体的软件设计实践中去。
三、课程内容和要求
这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。这四个层次的一般涵义表述如下:
知道———是指对这门学科和教学现象的认知。
理解———是指对这门学科涉及到的概念、原理、策略与技术的说明和解释,能提示所涉及到的教学现象演变过程的特征、形成原因以及教学要素之间的相互关系。
掌握———是指运用已理解的教学概念和原理说明、解释、类推同类教学事件和现象。
学会———是指能模仿或在教师指导下独立地完成某些教学知识和技能的操作任务,或能识别操作中的一般差错。
教学内容和要求表中的“√”号表示教学知识和技能的教学要求层次。
本标准中打“*”号的内容可作为自学,教师可根据实际情况确定要求或不布置要求。
教学内容及教学要求表
教学内容
知道
理解
掌握
学会
TOC \o 1-3 \h \z 1 算法概述
1.1 算法与程序
1.2 算法复杂性分析
√
√
TOC \o 1-3 \h \z 2 递归与策略
2.1 递归的概念
2.2 分治法的基本思想
二分搜索技术
大整数的乘法
Strassen矩阵乘法
棋盘覆盖
合并排序
快速排序
线性时间选择
最接近点对问题
循环赛日程表
√
√
√
√
√
√
√
√
√
√
√
√
TOC \o 1-3 \h \z 3 动态规划
3.1 矩阵连乘问题
动态规划算法的基本要素
最长公共子序列
最大子段和
凸多边形最优三角剖分
多边形游戏
图像压缩
电路布线
流水作业调度
0-1背包问题
最优二叉搜索树
动态规划加速原理
√
√
√
√
√
√
√
√
√
√
√
TOC \o 1-3 \h \z 4 贪心算法
4.1 活动安排问题
4.2 贪心算法的基本要素
4.3 最优装载
4.4 哈夫曼编码
单源最短路径
最小生成树
多机调度问题
贪心算法的理论基础
√
√
√
√
√
√
√
√
TOC \o 1-3 \h \z 5 回溯法
5.1 回溯法的算法框架
装载问题
批处理作业调度
符号三角形问题
n后问题
0-1背包问题
最大团问题
图的m着色问题
旅行售货员问题
圆排列问题
电路板排列问题
连续邮资问题
回溯法的效率分析
√
√
√
√
√
√
√
√
√
√
√
√
TOC \o 1-3 \h \z 6 分支限界法
6.1 分支限界法的基本思想
6.2 单源最短路径问题
6.3 装载问题
布线问题
0-1背包问题
最大团问题
旅行售货员问题
电路板排列问题
批处理作业调度
√
√
√
√
√
√
√
√
√
TOC \o 1-3 \h \z 7 线性规划与网络流
7.1 线性规划问题和单纯形算法
7.2 最大网络流问题
7.3 最小费用问题
√
√
√
四、课程实施
数据库系统是计算机专业和通信工程专业的必修课。一般情况下,计算机专业为54课时,函授为36课时。
课时安排及教学方法表
教学内容
课时建议
教与学的方法建议
理论/实验
(44/10)
TOC \o 1-3 \h \z 1 算法概述
1.1 算法与程序
1.2 算法复杂性分析
4/0
讲述
TOC \o 1-3 \h \z 2 递归与策略
2.1 递归的概念
2.2 分治法的基本思想
二分搜索技术
大整数的乘法
Strassen矩阵乘法
棋盘覆盖
合并排序
快速排序
线性时间选择
最接近点对问题
循环赛日程表
8/2
讲述、实验
TOC \o 1-3 \h \z 3 动态规划
3.1 矩阵连乘问题
动态规划算法的基本要素
最长公共子序
原创力文档

文档评论(0)