课程目标1:掌握递归与分治策略、动态规划法、贪心算法、回溯法与分支限界法的基本原理和算法框架,熟悉使用这些方法解决经典问题的算法。
课程目标2:掌握使用高级语言实现算法的的方法。
课程目标3:掌握算法的复杂性分析方法。
三、课程目标与毕业要求的关系
毕业要求
指标点
课程目标
2.数学基础
2.1具有扎实的数学基础,掌握分析学、代数学等主干数学课程的基本原理、基本技巧和结论,受到比较严格的数学思维训练
课程目标1
课程目标3
2.2具备运用数学知识解决实际问题的能力,了解数学的历史概况和广泛应用
3.软件开发
3.1具有熟练的计算机算法设计与软件开发能力,能够熟练掌握高级程序设计语言的语法,并设计适当的数据结构和算法,编程解决实际问题。
课程目标2
4.数据分析
4.1掌握数学建模和数据挖掘的常用方法,具备较强的数据分析与处理能力,能综合运用所学知识分析和解决问题。
2、课程目标与毕业要求的矩阵关系图
思想政治
数学基础
软件开发
数据分析
外语体育
人文劳动
1.1
1.2
1.3
2.1
2.2
2.3
3.1
3.2
3.3
4.1
4.2
4.3
5.1
5.2
5.3
6.1
6.2
L
H
M
序号
课程内容框架
教学要求
教学重点
教学难点
1
算法概述
(1)了解算法与程序的概念;
(2)掌握算法复杂性分析及其有关概念。
算法复杂性分析。
算法复杂性分析
2
递归与分治策略
(1)理解递归的概念;
(2)掌握分治法的基本思想;
(3)掌握二分搜索技术;
(4)掌握Strassen矩阵算法的分治法;
(5)了解棋盘覆盖问题的的分治法;
(6)掌握合并排序和快速排序算法;
分治法的设计和分析。
分治法的设计和分析
3
动态规划
(1)掌握动态规划算法的概念、步骤和基本要素;
(2)掌握最长公共子序列的动态规划算法;
(3)掌握矩阵的连乘的动态规划算法;
(4)掌握图像压缩的动态规划算法;
(5)了解流水作业调度的动态规划算法;
(6)掌握0-1背包问题的动态规划算法。
动态规划算法的设计和分析。
动态规划算法的设计和分析
4
贪心算法
(1)掌握贪心算法的概念和基本要素;
(2)了解贪心算法的理论基础;
(3)了解最优装载问题的贪心算法;
(4)掌握哈夫曼编码的贪心算法;
(5)了解单源最短路径的Dijkstra算法;
(6)了解最小生成树的Prim和Kruskal算法。
贪心算法的设计和分析。
贪心算法的设计和分析
5
回溯法
(1)掌握回溯法的算法框架;
(2)掌握批处理作业调度问题的回溯法;
(3)掌握n后问题的回溯法;
(4)了解符号三角形问题的回溯法;
(5)了解背包问题的回溯法;
(6)了解最大团问题的回溯法;
(7)了解图的m着色问题的回溯法;
(8)了解旅行售货问题的回溯法。
回溯法的算法设计和分析。
回溯法的算法设计和分析
6
分支限界法
(1)掌握分支限界法的基本思想;
(2)掌握单源最短路问题的分支限界法;
(3)掌握背包问题的分支限界法;
(4)了解旅行售货员问题的分支限界法。
分支限界法的算法设计与分析。
分支限界法的算法设计与分析
序
号
课程内
容框架
教学内容
教学方式
学时
支撑
算法与程序的概念,算法复杂性分析及其有关的概念。
讲授、演示、实验
2+2
8+4
动态规划算法的概念、步骤和基本要素,最长公共子序列,矩阵的连乘,图像压缩,流水作业调度,0-1背包问题。
6+4
贪心算法的概念、基本要素、理论基础,最优装载问题,哈夫曼编码,单源最短路径,最小生成树的Prim和Kruskal算法。
4+4
回溯法的算法框架,批处理作业调度问题,n后问题,背包问题,最大团问题,图的m着色问题,旅行售货问题。
8+2
分支限界法的基本思想,单源最短路问题,背包问题,旅行售货员问题。
6+1
考核内容
评价依据
课程目标1:掌握递归与分治策略、动态规划法、贪心算法、回溯法与分支限界法的基本原理和算法框架,熟悉使用这些方法解决经典问题的算法。(支撑毕业要求指标点2.1,2.2,3.1,4.1)
递归与分治策略、动态规划法、贪心算法、回溯法与分支限界法的算法框架、算法流程。
课堂表现;
平时作业;
平时测验;
实验成绩;
期末考试。
课程目标2:掌握使用高级语言实现算法的的方法。(支撑毕业要求指标点3.1,4.1)
简单算法的实现。
课程目标3:掌握算法的复杂性分析方法。(支撑毕业要求指标点2.1,2.2,3.1)
考核方式
比例
考核/评价细则
课堂表现
10%
评价标准:根据学生上课出勤情况和课堂讨论,回答问题等情况。基础分90分;旷课一次扣10分,迟到、早退、事假一次扣5分;有效参与讨论并正确回答问题一次加5分,最高100分。
作业
20%
评价标准:平时成绩使用百分制,作业成绩为各次作业的平均成绩。
平时测验
评价标准:取各次测验的平均成绩。
实验
评价标准:实验考核成绩。
期末考试
50%
评价标准:严格按照《算法设计与分析》期末试题参考答案及评分细则进行阅卷。
综合成绩
100%
课堂表现(10%)+作业(20%)+平时测验(10%)+实验(10%)+期末考试(50%)
如果期末考试成绩小于50分,则总评成绩与期末考试成绩相同。
八、课程目标达成度评价
参考《数学学院课程目标达成度评价方法》进行评价。
九、本课程各个课程目标的权重
依据第八部分中的课程目标达成度评价方法,计算得到本课程的各个课程目标的权重如下:
课程目标-1
课程目标-2
课程目标-3
权值wi
0.58
0.25
0.17
十、持续改进
根据学生的课堂表现、作业、平时测验和期末考试情况及教学督导的反馈,检验学生对本课程涉及的学科素养和学会反思的达成情况,及时对教学中的不足之处进行改进,调整教学指导策略;根据学生的课堂表现、作业、平时测验及期末考试成绩,检验本课程所支撑的毕业要求分解指标点的达成度情况;根据本课程所支撑的毕业要求分解指标点的达成度情况,在本学院教学指导委员会指导下,重新修订本课程大纲,实现持续改进。
十一、推荐教材及参考书目
1.推荐教材
[1]王晓东,计算机算法设计与分析(第3版)[M].北京:清华大学出版社2014.2
2.参考书目
[1]ThomasH.CormenCharlesE.LeisersonRonaldL.RivestCliffordStein,算法导论(影印版)[M].北京:高等教育出版社2002.5