Skip to content

CS170: Efficient Algorithms and Intractable Problems


  • Offered by: UC Berkeley
  • Prerequisites: CS61B, CS70
  • Programming Languages: LaTeX
  • Difficulty: 🌟🌟🌟
  • Class Hour: 60 hours

This is Berkeley's algorithm design and analysis course. It focuses on the theoretical foundations and complexity analysis of algorithms, covering Divide-and-Conquer, Graph Algorithms, Shortest Paths, Spanning Trees, Greedy Algorithms, Dynamic programming, Union Finds, Linear Programming, Network Flows, NP-Completeness, Randomized Algorithms, Hashing, etc.

The textbook for this course is well written and very suitable as a reference book. In addition, this class has written assignments and is recommended to use LaTeX. You can take this opportunity to practice your LaTeX skills.

Course Resources

Personal Resources

All the resources and assignments used by @PKUFlyingPig in this course are maintained in PKUFlyingPig/UCB-CS170 - GitHub