1. Regular Languages and Finite Automata [download]
2. Context Free Languages [download]
3. Turing Machines [download]
4. P and NP class problems [download]
5. Approximation algorithms [download]