Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

Coursera Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming

Platform
Coursera
Provider
Stanford University
Effort
4-8 hours/week
Length
4 weeks
Language
English
Credentials
Paid Certificate Available
Part of
Course Link
Overview
The primary topics in this part of the specialization are: greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes) and dynamic programming (knapsack, sequence alignment, optimal search trees).

Who is this class for: Learners with at least a little bit of programming experience who want to learn the essentials of algorithms. In a University computer science curriculum, this course is typically taken in the third year.

Syllabus
WEEK 1
Week 1

Two motivating applications; selected review; introduction to greedy algorithms; a scheduling application; Prim's MST algorithm.

WEEK 2
Week 2

Kruskal's MST algorithm and applications to clustering; advanced union-find (optional).

WEEK 3
Week 3

Huffman codes; introduction to dynamic programming.

WEEK 4
Week 4

Advanced dynamic programming: the knapsack problem, sequence alignment, and optimal binary search trees.

Taught by
Tim Roughgarden
Author
Coursera
Views
1,253
First release
Last update
Rating
0.00 star(s) 0 ratings
Top