Dynamic Programming, Greedy Algorithms
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
83/100
CourseAsk score
- What the provider tells you
- 32/45
- Who stands behind it
- 35/35
- How complete the listing is
- 16/20
Scores how much the provider publishes and who stands behind it — not how well it is taught.
What you'll learn
- understanding of algorithm design techniques
- familiarity with dynamic programming and greedy algorithms
- insight into NP-completeness and intractability
- ability to use linear and integer programming solvers
Price shown by Coursera — confirm on their site.
Enroll on CourseraYou'll be redirected to Coursera to complete enrollment.
- Listed & compared by CourseAsk
- English · 0
Compared on these lists
Where this course ranks against the alternatives.
Coursera