《算法分析与设计》课程教学大纲概要
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.
《算法分析与设计》课程教学大纲
Algorithms Analysis and Design 课程教学目标:
1.任务和地位:
《算法分析与设计》是计算机应用与技术专业(本科)的一门专业课,其内容是研究计算机领域及其它有关领域中的一些常用算法,它是计算机科学通常要解决的主要问题之一,因而也是各专业方向可以选修的一门重要的专业基础课。
通过本课程的学习,使学生掌握算法设计的常用方法,以便运用这些方法来设计解决一些常用的或较为复杂的实际问题的算法,并力争做到快捷、有效,从而提高程序设计的质量。除此,还要使学生学会分析算法、估计算法的时空复杂性,以便理解并科学评估有关算法。因而,对于计算机专业的技术人员,学习和掌握这方面的知识是很有必要的。
2.知识要求:通过一学期学习要达到如下要求
1)掌握算法的定义及基本概念、计算模型和复杂度的质量;
2)为分析算法的复杂性作准备,要了解相应的数学知识;
3)了解各种分类方法,重点是学会分析分类方法的复杂性。
3.能力要求:
通过本课程的学习,学生要掌握几种常用的算法设计策略,包括递归与分治策略、动态规划算法、贪心算法、回溯法和分支限界法等,并会分析算法的效率。能够
用所学方法解决实际问题。
二、教学内容的基本要求和学时分配
1
2.具体要求
第一章算法概述
[目的要求] 掌握算法基本概念及算法复杂性分析。
[教学内容] 算法与程序、算法复杂性分析。
[重点难点] 让同学们了解本门学科在科技发展中地位和作用,增强学好本课程的信心。
[教学方法] 课堂讲授与自学(课外)相结合。
[课时] 3 学时。
第二章递归与分治策略
[目的要求] 掌握递归与分治策略设计算法。
[教学内容] 递归的概念、分治法的基本思想、及分治算法实例。
[重点难点] 分治法的基本思想的具体实现及时间复杂度分析。
[教学方法] 课堂讲授与自学结合。
[课时] 14 学时。
第三章动态规划
[目的要求] 掌握用动态规划法设计算法。
[教学内容] 动态规划算法的基本要素、基本思想及算法实例。
[重点难点] 动态规划算法基本思想的具体实现及时间复杂度分析。
[教学方法] 课堂讲授与自学结合。
[课时] 9 学时。
第四章贪心算法
[目的要求] 掌握用贪心算法设计算法。
[教学内容] 贪心算法的基本要素、基本思想及算法实例。
[重点难点] 贪心算法基本思想的具体实现及时间复杂度分析。
[教学方法] 课堂讲授与自学结合。
[课时] 6 学时。
第五章回溯法
[目的要求] 掌握回溯法算法的基本模式。
[教学内容] 回溯法的算法框架及算法实例。
[重点难点] 算法框架的具体应用。
[教学方法] 课堂讲授与自学结合。
[课时] 11 学时。
第六章分支限界法[目的
要求] 了解分支限界法
[教学内容] 分支限界法的基本思想及算法实例。
[重点难点] 算法框架的具体应用。
[教学方法] 课堂讲授与自学结合。
[课时] 3 学时。
三.大纲说明
1.考试方式
闭卷考试
2.实践性环节
为配合理论教学,布置5~10 个大作业题。
3.考试成绩
期末考试:70(80)%,平时30(20)%
4.使用教材及主要参考书
教材:王晓东《计算机算法设计与分析》电子工业出版社2002年参考资料:
[1]严蔚敏《数据结构(C语言版)》清华大学出版社2002年
[2]郑莉《C++语言程序设计(第二版)》清华大学出版社 2001年
[3]谭浩强《C程序设计(第二版)》清华大学出版社 1999年