Public repository for CS 120 (Intro to Algorithms and their Limitations)

View the Project on GitHub

CS 120 (Intro to Algorithms and their Limitations)


An introductory course in theoretical computer science, aimed at giving students the power of using mathematical abstraction and rigorous proof to understand computation. Thus equipped, students will be able to design and use algorithms that apply to a wide variety of computational problems, with confidence about their correctness and efficiency, as well as recognize when a problem may have no algorithmic solution. At the same time, they will gain an appreciation for the beautiful mathematical theory of computation that is independent of (indeed, predates) the technology on which it is implemented.

Fall 2022

Fall 2021