Please see Staff page.
Please see the Communication Policy.
This undergraduate course covers techniques for designing and analyzing algorithms and data structures
for a wide range of problems. Topics include:
Divide-and-conquer, dynamic programming, greedy algorithms, parallel algorithms, randomized algorithms
Graph traversal, shortest path, minimum spanning tree, max flows and minimum cuts, matching
Easy and hard problems, decision problems, NP-Completeness, reducibility
Clustering, hashing, sketching, streaming, approximation algorithms
© 2022 Theme by GraphBerry