CS 121: Introduction to Theoretical Computer Science is a compulsory theory course for all computer science concentrators in Harvard College. A course in discrete mathematics is a prerequisite. For students who did not have the time to take a discrete math course before CS 121 can also attain the necessary prerequisite knowledge through self-study of MIT's 6.042j course (on their OCW website), as described on the CS 121 website.
Topics of study include:
- Mathematical Proofs
- Proofs by Induction and Well Ordering
- Sets, Functions, Relations
- Graphs
- Sums and Asymptotics
- Asymptotics of Recurrences
- Discrete Probability
This repo contains my study materials such as the suggested homework and problem sets, as well as an index to all the required readings and links recommended for self-study by CS 121.
Readings:
Lectures:
Homework:
Readings:
Lectures:
Homework:
Readings:
- LLM - Data Types
- Mathematics for Computer Science Chapter 8 (Infinite Sets - optional)
Homework:
- MCS 4.8, 4.13, 4.14, 4.18, 4.25, 4.31, 4.37
Readings:
- LLM - Digraphs
- LL - Graph Theory
- Mathematics for Computer Science Chapter 10 to 12 (Directed Graphs & Partial Orders, Communication Networks, Simple Graphs - optional)
Lectures:
Homework:
- MIT 6.042j Problem Set 4
- MCS 10.15, 10.18, 10.21
Readings:
Lectures:
Homework:
Readings:
Lectures:
Homework:
Readings:
Lectures:
Homework: