算法设计与分析 Design and Analysis of Algorithms (Coursera)

算法设计与分析 Design and Analysis of Algorithms (Coursera)
Free Course
Categories
Effort
Certification
Languages
本课程需要一些高等数学的基础知识,如函数极限与积分,也需要了解一些基本的数据结构,如数组、链表、图等,学习中只需要了解相关概念。缺少上述基础的同学可以根据授课进度自己补上有关知识即可。
Misc
算法设计与分析 Design and Analysis of Algorithms (Coursera)
学习面对实际问题如何设计算法与分析算法。

课程教学目标:

针对实际问题需求,进行数学建模并选择高效求解算法的训练,为提高学生的素质和创新能力打下必要的基础。主要内容涉及:面对实际问题建立数学模型、设计正确的求解算法、算法的效率估计、改进算法的途径、问题计算复杂度的估计、难解问题的确定和应对策略等等。本课程是算法课程的基础部分,主要涉及算法的设计、分析与改进途径,其他有关计算复杂性的内容将在后续课程中加以介绍。

课程内容安排:

本课程的内容分成两大部分:算法的基础知识、通用算法设计技术与分析方法。

第一部分是算法基础知识,约占20%,主要介绍算法相关的基本概念和数学基础。比如,什么是算法的伪码描述?什么是算法最坏情况下和平均情况下的时间复杂度?算法时间复杂度函数的主要性质,算法复杂度估计中常用的数学方法,如序列求和及递推方程求解。

第二部分是通用的算法设计技术与分析方法,主要介绍分治策略、动态规划、贪心法、回溯与分支限界。主要介绍这些设计技术的使用条件、分析方法、改进途径,并给出一些重要的应用。



Free Course
本课程需要一些高等数学的基础知识,如函数极限与积分,也需要了解一些基本的数据结构,如数组、链表、图等,学习中只需要了解相关概念。缺少上述基础的同学可以根据授课进度自己补上有关知识即可。