算法设计与分析

课程简介

算法设计与分析是计算机专业的核心课程。学习该课程对学习其他专业课奠定了扎实的基础,也对培养计算思维和求解问题的能力起到重要作用。面对各个应用领域的大量实际问题,最重要的是分析问题的性质并选择正确的求解思路,即找到一个好的算法。

本课程注重针对实际问题需求,进行数学建模并选择高效求解算法的训练,为提高学生的素质和创新能力打下必要的基础。课程的内容分成两大部分:算法的基础知识和通用算法设计技术与分析方法。

    算法基础知识部分主要介绍算法相关的基本概念,比如,什么是算法?什么是算法的伪码描述?什么是算法最坏情况下和平均情况下的时间复杂度?算法时间复杂度函数的主要性质,算法复杂度估计中常用的数学方法等。

通用算法设计技术与分析方法部分主要介绍:蛮力法、分治策略、动态规划、贪心法、回溯法和分支限界法等。重点介绍这些设计技术的使用条件、分析方法,并给出一些重要的应用。


教师简介
先导课程

高等数学、离散数学、C语言程序设计、数据结构

教学计划

时间

周次

周学时

教学内容

教学形式与手段

2020

1

3

第1-2章   算法设计基础

             线上授课

2

3

第3章蛮力法---查找问题,排序问题组合问题

             线上授课

3

3

第3章蛮力法---图问题,几何问题

多媒体讲授


4

3

第4章 分治法---概述,排序问题

多媒体讲授


5

3

第4章 分治法---组合问题

多媒体讲授


6

3

第4-5章   分治法---几何问题

减治法----概述

多媒体讲授


7

3

第5章 减治法----查找问题,排序问题

多媒体讲授


8

3

第5-6章   减治法----组合问题

动态规划—概述

多媒体讲授


9

3

第6章 动态规划—图问题

多媒体讲授


10

3

第6章 动态规划—组合问题

多媒体讲授


11

3

第6-7章   动态规划—查找问题

贪心法概述,

多媒体讲授


12

3

第7章贪心法图问题

多媒体讲授


13

3

第7章 贪心法组合问题

多媒体讲授


14

3

第8章 回溯法概述,图问题,

多媒体讲授


15

3

第8章回溯法图问题,组合问题

多媒体讲授


16

3

第9章 分支限界法概述,图问题

多媒体讲授


17

3

第9章分支限界法图问题,组合问题

多媒体讲授


18

3

第9章分支限界法组合问题

多媒体讲授


19

3

期末考试




考试方式
参考书目

《算法设计与分析》, 王晓东, 清华大学出版社;

计算机算法基础》,余祥萱 等著,华中科技大学出版社;

《算法基础》,G. Brassard 著,邱仲潘 等译,清华大学出版社;

《计算机算法设计、分析与实现》,王晓云,科学出版社;

《算法导论》(美)科曼(Cormen,T.H.) 等著,潘金贵 等译,机械工业出版社.

计算机算法设计与分析--王晓东.pdf