本课程涵盖基本算法设计技术,如分而治之、动态编程和贪婪算法。最后简要介绍难解性(NP-完备性)和使用线性/整数编程求解器解决优化问题。本课程可作为 Coursera 平台上提供的中大博尔德数据科学硕士或计算机科学硕士学位课程的一部分,获得相应的学分。这些经过全面认证的研究生学位提供有针对性的课程、为期 8 周的短期课程和现收现付的学费。录取依据是三门预修课程的成绩,而非学术历史。Coursera 上的 CU 学位非常适合应届毕业生或在职专业人士。了解更多信息:


了解顶级公司的员工如何掌握热门技能

积累特定领域的专业知识
- 向行业专家学习新概念
- 获得对主题或工具的基础理解
- 通过实践项目培养工作相关技能
- 获得可共享的职业证书

该课程共有4个模块
我们将正式介绍作为一种设计方案的分而治之算法,并研究我们过去遇到过的一些分而治之算法。我们将学习整数乘法(Karatsuba 算法)、矩阵乘法(Strassen 算法)、快速傅立叶变换(FFT)和查找最接近点对的一些分而治之算法。
涵盖的内容
9个视频15篇阅读材料5个作业1个编程作业1个讨论话题
在本模块中,您将学习作为算法设计原则的动态编程。我们将提供一种循序渐进的方法,将问题表述为动态程序,并使用 memoization 解决这些问题。我们将介绍查找最长公共子序列的动态编程、Knapsack 问题和一些有趣的动态编程应用。
涵盖的内容
6个视频6篇阅读材料5个作业1个编程作业
在本模块中,我们将学习贪心算法。我们将了解贪心算法的基本设计原则,并学习一些贪心调度和哈夫曼编码的算法。我们还将学习一些有趣的案例,这些案例中贪心算法保证了实际解的近似值。
涵盖的内容
5个视频4篇阅读材料3个作业1个编程作业
P vs NP、旅行推销员问题、顶点覆盖、3-着色等例子;整数线性规划和将问题转化为整数规划。
涵盖的内容
9个视频5篇阅读材料4个作业1个编程作业
获得职业证书
将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。
攻读学位
课程 是 University of Colorado Boulder提供的以下学位课程的一部分。如果您被录取并注册,您已完成的课程可计入您的学位学习,您的学习进度也可随之转移。
位教师

从 算法 浏览更多内容
- 状态:免费试用
University of Colorado Boulder
- 状态:免费试用
Stanford University
- 状态:免费试用
University of Colorado Boulder
- 状态:免费试用
University of Colorado Boulder
人们为什么选择 Coursera 来帮助自己实现职业发展




学生评论
226 条评论
- 5 stars
77.87%
- 4 stars
15.48%
- 3 stars
2.21%
- 2 stars
1.76%
- 1 star
2.65%
显示 3/226 个
已于 Sep 18, 2022审阅
Great work from professor Sriram Sankaranarayanan explaining such complex material. I wish we could review more examples during the class (specially Dynamic Programming ones).
已于 Jul 9, 2023审阅
Clear and helpful instructions but the last assignment is so hard.
已于 Sep 20, 2021审阅
Excellent. This course covers some difficult topics, but the lectures and homework assignments were superb and made them quite approachable.
常见问题
在 Coursera 上,两个或两个以上的中大博尔德学位课程提供交叉列出的课程。例如,"动态编程、贪婪算法 "既是 CSCA 5414(MS-CS)课程,也是 DTSA 5503(MS-DS)课程。
- 交叉列出的课程不能获得一个以上版本的学分。
- 您可以通过查看课程的学生手册来确定交叉列出的课程。
- 您的成绩单将受到影响。在评估毕业要求时,交叉列出的课程被视为等同课程。但是,我们鼓励您选修本专业的交叉课程(如有),以确保您的中大成绩单反映出您直接在本系完成的大量课程。您从其他专业完成的任何课程都将以该专业的课程前缀(如 DTSA 与 CSCA)出现在您的中大成绩单上。
- 各专业对入学和毕业的最低成绩要求可能有所不同。例如,MS-DS 要求所有课程均达到 C 级或以上方可毕业(入学要求 GPA 达到 3.0),而 MS-CS 要求所有拓展课程均达到 B 级或以上,所有选修课程均达到 C 级或以上方可毕业(入学要求每门路径课程均达到 B 级或以上)。所有课程均要求学生在入学和毕业时保持 3.0 的累积 GPA。
是的。 在评估毕业要求时,交叉列出的课程被视为等同课程。您可以通过查看您所在专业的学生手册来确定交叉列出的课程。
您可以在任何开放注册期间升级并支付学费,以获得 << 本课程/本专业课程>> 的研究生级别的中大博尔德学分。由于 << 本课程/这些课程>> 在计算机科学硕士课程和数据科学硕士课程中交叉列出,因此您需要在升级之前确定您想从哪个课程中获得学分。
数据科学硕士(MS-DS)学分: 要升级到 << 本课程/这些课程>> 的数据科学(DTSA)学分版本,请使用 MS-DS 注册表。查看如何操作。
计算机科学硕士(MS-CS)学分: 要升级到<<此课程/这些课程>>的计入学分的计算机科学(CSCA)版本,请使用MS-CS注册表。查看如何操作。
如果您不确定哪个课程最适合您,请查看MS-CS和MS-DS课程网站,如果还有问题,请联系[email protected]或[email protected]。
更多问题
提供助学金,