课程名称 算法设计与分析基础 ZM)Y Rdh
英文名称 The Fundation of Design and Analysis of Algorithms 'k|?M
课程编号 不填 总学时 60 学 分 不填 Z+jgFl
4
预修课程 数 据 结 构 开课学期 不填 :4o08M%
大纲撰写人 顾 乃 杰 Vs>/
q:I
一、教学目标和基本要求 8J60+2Wa
目标:本课程是高等学校计算机系各专业的基础课, 其要求是使学生了解和掌握算法基础这门课程的基本内容, 知道算法设计的基本方法和技术, 学会算法性能分析中的具体方法和技巧, 为计算机应用和科学研究工作中有效求解问题, 以及为今后进一步学习打下基础。 f<!3vAh
基本要求:使学生能够从的运算三个方面去掌握各种数据结构的特性, 对算法的时、空复杂性有一定的分析能力,使之能够针对具体的应用问题, 选择合适的数据结构及设计结构清晰、正确有效的算法解决之。 OyTE d5\3
二、课程简介 (e>.hfrs
本课程系统而全面地介绍了算法设计的基本策略和方法, 如:分治法、贪心法、动态规划、回溯法、分枝-限界等等, 并从解决大量计算机科学和应用中出现的问题出发, 描述了应用这些策略和方法而设计有效算法的过程, 并且给出了若于精典算法, 同时,对通过对这些典型算法的时间和空间复杂度的分析,逐步介绍了算法分析的方法和步骤, 以及提高算法性能的技巧, 着重强调了算法优化的思想。 NZUQ
R`5
三、教学重点、难点 f? sW^d;
重点: 算法设计的基本思想和策略, 算法优化的技巧, 算法性能分析的方法; Rg/*)
SKj
难点: 将算法优化的思想贯穿在设计过程中, 算法平均性能的分析技巧。 [8Zq
1tU;G
j\V9o9D
四、教材名称及主要参考书 ?NazfK
参考书:《计算机算法基础》,邹海明,余祥宣, 华中理工大学出版社 ^:JZ.r
《计算机算法导引》,卢开澄 编著, 清华大学出版社 VUfV=&D-*g
'%!'1si
k M
/cD`
五、课程章节主要内容及学时分配 l.tN
q$3pS
/.leY$
第一章 绪 论 (2 学时) ;d"F'd
第一节 基本概念
PA5
_
第二节 算法的设计和性能度量 ,TuDG*YA
第三节 标准记号与常用函数和公式 W/dl`UDY
第二章 分治与递归策略 (5 学时) &_Py{Cv@Dw
第一节 二分检索 MMs#Y1dH
第二节 矩阵的快速乘法 I`
%\ "bF@
第三节 快速傅里叶变换(FFT) 7%aaqQ1T
第四节 广义表及递归算法 ~T<y
p
第三章 排序与选择 (5 学时) $4yv)6G
第一节 简单排序和SHELL排序 l#8SlRji
第二节 选择排序和堆排序 AF5$U8jf
第三节 快速排序和归并排序 Fv n:V\eb
第四节 选择问题 FI,>v`
第五节 桶排序和基数排序 F<8Rr#Z
第四章 贪心策略 (4学时) PZn[Yb:
第一节 文件存储 LqnN5l@_B
第二节 背包问题 ["|' f
第三节 有限期的作业调度问题 \79KU
第五章 串匹配 (4学时) S4RvWTtQV
第一节 一般算法 K9v@L6pY=
第二节 Rabin-Karp算法 x \qS|q\N
第三节 Knuth-Morris-Pratt算法 Vl;GQe
第四节 Boyer-Moore算法 _%G)Uz{3
第六章 动态规划 (8学时) !,}W
|(P)
第一节 多段图 tB"amv
第二节 最佳二分检索 QG\lXY,
第三节 资源分配问题 %GUu{n<6
第五节 0/1背包问题 Kg0
Vbzvb
第六节 货郎担问题 %1Gat6V<'
第七节 最长公共子序列 wT?.Mte
第八节 作业调度问题 第七章 回溯法 (5学时) JZ
6
{W
第一节 一般算法 9g3J{pKcZ
第二节 皇后问题 p"4i(CWGS
第三节 子集和数问题 nenYP0
第四节 图的着色 @vWC "W
第五节 哈密顿环 f(.@]eu
X
第六节** 背包问题 6x KbK1W
第八章 检索、遍历与分枝限界法(5学时) H!U\;ny
第一节 代码最优化 Vx_lI
#3
第二节 对策树 55xv+|k
第三节 资源分配问题 D*+uH;ws
第四节 0/1背包问题 2 g"_*[
第五节 货郎担问题 m#SDB6l
第九章 数组压缩存贮与数值计算(8学时) 7sECbbJT
第一节 数据的压缩存贮技术 =E Cw'
第二节 压缩存贮时的矩阵运算 }IvJIr
第三节 多项式的快速乘法 eUvIO+av
第四节 矩阵链乘问题 SdhdXVZ
第五节 矩阵分解与逆矩阵 -o\$.Q3
第十章 数论算法 (6学时) %+oWW5q7
第一节 最大公约数与模运算 .J' 8d"+
第二节 中国余数定理 Ju$= Tn
第三节 元素的幂运算 X1U7$/t
第四节 素数的判定算法 xN
wKTIK$
第五节 背包公钥密码 !}wJ+R ^2
第六节 RSA公钥密码 \KfngYD]W
md7Aqh
六、系教学委员会意见 \dj&4u3
+7?p&-r)x
(gBP`*2
TkhbnO g6
组长签字: 年 月 日 _3<J!$]&p
七、系主任意见 DQW^;Ls
quc?]rb
xB:,l'\G
KquHc-fzqr
系主任签字: 年 月 日