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.

Dynamic Programming, Greedy Algorithms
Grow your skills with Coursera Plus for $239/year (usually $399). Save now.

Dynamic Programming, Greedy Algorithms
This course is part of Foundations of Data Structures and Algorithms Specialization

Instructor: Sriram Sankaranarayanan
39,586 already enrolled
Included with
251 reviews
Recommended experience
What you'll 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
Skills you'll gain
Tools you'll learn
Details to know

Add to your LinkedIn profile
18 assignments
See how employees at top companies are mastering in-demand skills

Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate

There are 4 modules in this course
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Build toward a degree
This course is part of the following degree program(s) offered by University of Colorado Boulder. If you are admitted and enroll, your completed coursework may count toward your degree learning and your progress can transfer with you.¹
Instructor

Offered by
Explore more from Algorithms

University of Colorado Boulder

University of Colorado Boulder

Stanford University
Why people choose Coursera for their career

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.
Learner reviews
- 5 stars
76.89%
- 4 stars
16.33%
- 3 stars
2.39%
- 2 stars
1.59%
- 1 star
2.78%
Showing 3 of 251
Reviewed on 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).
Reviewed on Jul 9, 2023
Clear and helpful instructions but the last assignment is so hard.
Reviewed on Sep 20, 2021
Excellent. This course covers some difficult topics, but the lectures and homework assignments were superb and made them quite approachable.

Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy


