I am an undergraduate student of Computer Science and am very interested in learning the theoretical part of it all.
Unfortunately, none of the subjects we have in our UG program give us an insight of theoretical part of Computer Science. We do have the subjects Automata and Graph Theory, but our syllabus is very limited.
I have been looking for resources to learn the theory of computer science from the base up, for quite some time now. I have already tried reading papers, completed MOOCs.
Somehow, I am always dissatisfied with the material. It is either too complicated (I don't even understand the notation used) or too trivial (teaching bits and bytes).
Could someone please provide me with some resources to learn theoretical computer science. If possible, sort it in the order in which I should read it, so that the majority of prerequisites of the nth entry in the list, are covered in the preceding n-1 entries.
Please keep in mind:
- I am really interested in learning it.
- I have a decent background in programming, and have worked with several programming languages.
- This is not a What videos/papers/books should everyone watch/read question. I am simply looking for some introductory resources, which are neither too obvious, nor too complicated.
I have had 3 semesters of College level Maths. Also, I have studied the material provided by ocw.mit.edu, for the courses: 18.03, 18.062J and 18.400J mentioned at http://math.mit.edu/academics/undergrad/major/course18C/
Thanks a lot.