Loopskey-logo
CourseTechnology

Dynamic Programming, Greedy Algorithms

By External Provider

Price

Free

Go to content

Opens coursera.org in a new tab

Level

ADVANCED

About this course

This course covers basic algorithm design techniques such as divide and conquer, dynamic programming, and greedy algorithms. It concludes with a brief introduction to intractability (NP-completeness) and using linear/integer programming solvers for solving optimization problems. We will also cover some advanced topics in data structures. This course can be taken for academic credit as part of CU Boulder’s MS in Data Science or MS in Computer Science degrees offered on the Coursera platform. These fully accredited graduate degrees offer targeted courses, short 8-week sessions, and pay-as-you-go tuition. Admission is based on performance in three preliminary courses, not academic history. CU degrees on Coursera are ideal for recent graduates or working professionals. Learn more: MS in Data Science: https://www.coursera.org/degrees/master-of-science-data-science-boulder MS in Computer Science: https://coursera.org/degrees/ms-computer-science-boulder

What you will learn

  • Describe basic algorithm design techniques
  • Create divide and conquer, dynamic programming, and greedy algorithms
  • Understand intractable problems, P vs NP and the use of integer programming solvers to tackle some of these problems