课程信息
4.5
232 个评分
54 个审阅
专项课程
100% 在线

100% 在线

立即开始,按照自己的计划学习。
可灵活调整截止日期

可灵活调整截止日期

根据您的日程表重置截止日期。
高级

高级

完成时间(小时)

完成时间大约为26 小时

建议:4 weeks of study, 4-8 hours/week...
可选语言

英语(English)

字幕:英语(English)

您将获得的技能

Python ProgrammingLinear Programming (LP)Np-CompletenessDynamic Programming
专项课程
100% 在线

100% 在线

立即开始,按照自己的计划学习。
可灵活调整截止日期

可灵活调整截止日期

根据您的日程表重置截止日期。
高级

高级

完成时间(小时)

完成时间大约为26 小时

建议:4 weeks of study, 4-8 hours/week...
可选语言

英语(English)

字幕:英语(English)

教学大纲 - 您将从这门课程中学到什么

1
完成时间(小时)
完成时间为 5 小时

Flows in Networks

Network flows show up in many real world situations in which a good needs to be transported across a network with limited capacity. You can see it when shipping goods across highways and routing packets across the internet. In this unit, we will discuss the mathematical underpinnings of network flows and some important flow algorithms. We will also give some surprising examples on seemingly unrelated problems that can be solved with our knowledge of network flows....
Reading
9 个视频 (总计 72 分钟), 3 个阅读材料, 2 个测验
Video9 个视频
Network Flows9分钟
Residual Networks10分钟
Maxflow-Mincut7分钟
The Ford–Fulkerson Algorithm7分钟
Slow Example3分钟
The Edmonds–Karp Algorithm11分钟
Bipartite Matching11分钟
Image Segmentation7分钟
Reading3 个阅读材料
Slides and Resources on Flows in Networks10分钟
Available Programming Languages10分钟
FAQ on Programming Assignments10分钟
Quiz1 个练习
Flow Algorithms10分钟
2
完成时间(小时)
完成时间为 5 小时

Linear Programming

Linear programming is a very powerful algorithmic tool. Essentially, a linear programming problem asks you to optimize a linear function of real variables constrained by some system of linear inequalities. This is an extremely versatile framework that immediately generalizes flow problems, but can also be used to discuss a wide variety of other problems from optimizing production procedures to finding the cheapest way to attain a healthy diet. Surprisingly, this very general framework admits efficient algorithms. In this unit, we will discuss some of the importance of linear programming problems along with some of the tools used to solve them....
Reading
10 个视频 (总计 84 分钟), 1 个阅读材料, 2 个测验
Video10 个视频
Linear Programming8分钟
Linear Algebra: Method of Substitution5分钟
Linear Algebra: Gaussian Elimination10分钟
Convexity9分钟
Duality12分钟
(Optional) Duality Proofs7分钟
Linear Programming Formulations8分钟
The Simplex Algorithm10分钟
(Optional) The Ellipsoid Algorithm6分钟
Reading1 个阅读材料
Slides and Resources on Linear Programming10分钟
Quiz1 个练习
Linear Programming Quiz10分钟
3
完成时间(小时)
完成时间为 5 小时

NP-complete Problems

Although many of the algorithms you've learned so far are applied in practice a lot, it turns out that the world is dominated by real-world problems without a known provably efficient algorithm. Many of these problems can be reduced to one of the classical problems called NP-complete problems which either cannot be solved by a polynomial algorithm or solving any one of them would win you a million dollars (see Millenium Prize Problems) and eternal worldwide fame for solving the main problem of computer science called P vs NP. It's good to know this before trying to solve a problem before the tomorrow's deadline :) Although these problems are very unlikely to be solvable efficiently in the nearest future, people always come up with various workarounds. In this module you will study the classical NP-complete problems and the reductions between them. You will also practice solving large instances of some of these problems despite their hardness using very efficient specialized software based on tons of research in the area of NP-complete problems....
Reading
16 个视频 (总计 115 分钟), 1 个阅读材料, 2 个测验
Video16 个视频
Search Problems9分钟
Traveling Salesman Problem7分钟
Hamiltonian Cycle Problem8分钟
Longest Path Problem1分钟
Integer Linear Programming Problem3分钟
Independent Set Problem3分钟
P and NP4分钟
Reductions5分钟
Showing NP-completeness6分钟
Independent Set to Vertex Cover5分钟
3-SAT to Independent Set14分钟
SAT to 3-SAT7分钟
Circuit SAT to SAT12分钟
All of NP to Circuit SAT5分钟
Using SAT-solvers14分钟
Reading1 个阅读材料
Slides and Resources on NP-complete Problems10分钟
Quiz1 个练习
NP-complete Problems12分钟
4
完成时间(小时)
完成时间为 5 小时

Coping with NP-completeness

After the previous module you might be sad: you've just went through 5 courses in Algorithms only to learn that they are not suitable for most real-world problems. However, don't give up yet! People are creative, and they need to solve these problems anyway, so in practice there are often ways to cope with an NP-complete problem at hand. We first show that some special cases on NP-complete problems can, in fact, be solved in polynomial time. We then consider exact algorithms that find a solution much faster than the brute force algorithm. We conclude with approximation algorithms that work in polynomial time and find a solution that is close to being optimal. ...
Reading
11 个视频 (总计 119 分钟), 1 个阅读材料, 2 个测验
Video11 个视频
2-SAT10分钟
2-SAT: Algorithm12分钟
Independent Sets in Trees14分钟
3-SAT: Backtracking11分钟
3-SAT: Local Search12分钟
TSP: Dynamic Programming15分钟
TSP: Branch and Bound9分钟
Vertex Cover9分钟
Metric TSP12分钟
TSP: Local Search6分钟
Reading1 个阅读材料
Slides and Resources on Coping with NP-completeness10分钟
Quiz1 个练习
Coping with NP-completeness6分钟
4.5
54 个审阅Chevron Right
工作福利

83%

通过此课程获得实实在在的工作福利
职业晋升

50%

加薪或升职

热门审阅

创建者 EMJan 4th 2018

As usual, complex arguments explained in simple terms!\n\nSome problems are really tough! (e.g. there's a problem from Google Code Jam).\n\nThank you for this course!

创建者 ASJun 15th 2018

Another great course in this specialization with challenging and interesting assignments. However, this one is somewhat harder but rewarding.

讲师

Avatar

Alexander S. Kulikov

Visiting Professor
Department of Computer Science and Engineering
Avatar

Michael Levin

Lecturer
Computer Science
Avatar

Daniel M Kane

Assistant Professor
Department of Computer Science and Engineering / Department of Mathematics
Avatar

Neil Rhodes

Adjunct Faculty
Computer Science and Engineering

关于 University of California San Diego

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

关于 National Research University Higher School of Economics

National Research University - Higher School of Economics (HSE) is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communications, IT, mathematics, engineering, and more. Learn more on www.hse.ru...

关于 Data Structures and Algorithms 专项课程

This specialization is a mix of theory and practice: you will learn algorithmic techniques for solving various computational problems and will implement about 100 algorithmic coding problems in a programming language of your choice. No other online course in Algorithms even comes close to offering you a wealth of programming challenges that you may face at your next job interview. To prepare you, we invested over 3000 hours into designing our challenges as an alternative to multiple choice questions that you usually find in MOOCs. Sorry, we do not believe in multiple choice questions when it comes to learning algorithms...or anything else in computer science! For each algorithm you develop and implement, we designed multiple tests to check its correctness and running time — you will have to debug your programs without even knowing what these tests are! It may sound difficult, but we believe it is the only way to truly understand how the algorithms work and to master the art of programming. The specialization contains two real-world projects: Big Networks and Genome Assembly. You will analyze both road networks and social networks and will learn how to compute the shortest route between New York and San Francisco (1000 times faster than the standard shortest path algorithms!) Afterwards, you will learn how to assemble genomes from millions of short fragments of DNA and how assembly algorithms fuel recent developments in personalized medicine....
Data Structures and Algorithms

常见问题

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您注册课程后,将有权访问专项课程中的所有课程,并且会在完成课程后获得证书。您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

还有其他问题吗?请访问 学生帮助中心