1、计算机算法基础课程教学大纲一、课程基本信息课程代码:05110354课程名称:计算机算法基础课程英文名称:The Computer Algorithms Fundamental课程所属单位:计算机与信息工程系计算机科学与技术教研室课程面向专业:计算机科学与技术本科课程类型:选修课先修课程:数据结构、C/C+程序设计、离散数学、高等数学、线性代数、概率论与数理统计。(最好具 有组合数学的基础)学分:1.5总学时:36 (其中理论学时:36 实验学时:0)二、课程性质与目的计算机算法基础属于计算机科学与技术专业选修课程之一。计算机算法是计算机科学和计算机应用 的核心。无论是计算机系统、系统软件的设
2、计,还是各种计算机应用问题的设计都归结为计算机算法设 计。计算机算法基础是研窕计算机算法的设计与分析的课程。它研究算法设计的基本方法,并分析了这 些算法的时间和空间复杂度。学生在学习过程中可以通过阅读和分析大量的算法实例,掌握算法设计、 分析和改进的基本知识和基本技能,最终到达能灵活运用这些方法和技术去解决各类实际问题。三、课程教学内容与要求概述教学内容与要求本章讲述算法的定义、评价算法的标准、算法的复杂度分析。教学重点算法的定义、算法的评价标准、算法的复:杂度分析。教学难点算法的复杂度分析。递规与分治法教学内容与要求理解递规的概念;掌握设计有效算法的分治算法;通过范例学习分治算法的设计技巧。
3、教学重点递规的概念;分治法的基本思想及其设计技巧。教学难点通过范例学习分治算法的设计技巧,并进行复杂性分析。动态规划教学内容与要求理解动态规划算法的概念;掌握动态规划算法的基本要素;掌握设计动态规划算法的步骤;通过范例学 习动态规划算法的设计技巧。教学重点掌握动态规划算法的基本要素;掌握设计动态规划算法的步骤。教学难点通过范例学习动态规划算法的设计技巧,并进行复杂性分析。贪心算法教学内容与要求理解贪心算法的概念;掌握贪心算法的基本要素;理解贪心算法与动态规划算法的差异;通过范例学习 贪心算法设计的基本技巧。教学重点掌握贪心算法的基本要素;理解贪心算法与动态规划算法的差异。教学难点通过范例学习贪
4、心算法设计的基本技巧,并进行复杂度分析。回溯法教学内容与要求理解回溯法的深度优先搜索策略:掌握回溯法解题的基本框架;通过范例学习回溯法设计的基本技巧。教学重点理解回溯法的深度优先搜索策略;掌握回溯法解题的基本框架。教学难点通过范例学习回溯法设计的基本技巧,并进行复杂度分析。(六)分支限界法1、教学内容与要求理解回溯法的深度优先搜索策略;掌握I可溯法解题的基本框架,通过范例学习I可溯法设计的基本技巧,并进行复杂度分析2、教学重点理解回溯法的深度优先搜索策略;掌握回溯法解题的基本框架3、教学难点通过范例学习回溯法设计的基本技巧,并进行复杂度分析。(七)线性规划与网络流1、教学内容与要求理解线性规划
5、算法模型;掌握网络与网络流的基本概念;通过范例学习基本网络流算法设计的基本技巧, 并进行复杂度分析。2、教学重点理解线性规划算法模型;掌握网络与网络流的基本概念3、教学难点通过范例学习基本网络流算法设计的基本技巧,并进行复杂度分析。四、学时分配学时分配表序号|教学内容(按章填写)学时课堂讲授实验课习题课讨论课其它1概述22递规与分治法63动态规划64贪心算法65回溯法66分支限界法67线性规划与网络流4小计36比例100%合计36五、课程考核方法:1、作 业:40%2、考试(开卷):60%六、教材与主要参考书:1 .算法设计与分析周培德编著机械工业出版社1998.算法设计技巧与分析吴伟昶译电子工业出版社2(X)42 .计算机算法设计与分析王晓东编著电子工业出版社2004.计算机算法基础余祥宣等编著华中科技大学出版社2(X)4