From 2005 to 2008 I was an undergraduate studying Computer Science at Cambridge. My method of preparing for the exams was to summarise each lecture course into just a few sides of A4, which I’d then commit to memory in their entirety.

To make them shorter and hence easier to memorise, I’d omit all but truly essential information from each crib sheet. For example, I wouldn’t include any formula if it was easily derivable from first principles, and I certainly didn’t waste any words on conceptual explanations. As a consequence, these sheets certainly aren’t the best choice for those learning a subject for the first time, but they might come in handy as a refresher for those with some familiarity with the subject.

So without further ado, here is my summary of a complete Cambridge Computer Science degree in 58 crib sheets:

 Advanced System Topics pdf lyx Algorithms pdf doc Algorithms II pdf doc Artifical Intelligence I pdf doc Bioinformatics pdf lyx Business Studies pdf lyx C And C++ pdf doc Comparative Architectures pdf lyx Compiler Construction pdf doc Computation Theory pdf doc Computer Design pdf doc Computer Graphics pdf doc Computer Systems Modelling pdf lyx Computer Vision pdf lyx Concepts In Programming Languages pdf doc Concurrent Systems And Applications pdf doc Databases pdf doc Denotational Semantics pdf lyx Digital Communications pdf doc Digital Communications II pdf lyx Digital Electronics pdf doc Digital Signal Processing pdf lyx Discrete Mathematics I pdf doc Discrete Mathematics II pdf doc Distributed Systems pdf lyx ECAD pdf doc Economics And Law pdf doc Floating Point Computation pdf doc Foundations Of Computer Science pdf doc Foundations Of Functional Programming pdf doc Human Computer Interaction pdf lyx Information Retrieval pdf lyx Information Theory And Coding pdf lyx Introduction To Security pdf doc Logic And Proof pdf doc Mathematical Methods For CS pdf doc Mathematics I pdf doc Mathematics II pdf doc Mathematics III pdf doc Mechanics And Relativity pdf doc Natural Language Processing pdf lyx Operating Systems pdf doc Optimising Compilers pdf lyx Oscillations And Waves pdf doc Probability pdf doc Professional Practice And Ethics pdf doc Programming In Java pdf doc Prolog pdf doc Quantum And Statistical Mechanics pdf doc Regular Languages And Finite Automata pdf doc Semantics Of Programming Languages pdf doc Software Design pdf doc Software Engineering pdf doc Specification And Verification I pdf lyx Specification And Verification II pdf lyx Topics In Concurrency pdf lyx Types pdf lyx VLSI Design pdf doc

Because I only created crib sheets for subjects that I thought I might potentially choose to answer questions on during the exam, this list does not cover every available course (though it’s probably at least 70% of them). The other thing to note is that Cambridge requires Computer Science students to take some courses in natural science during your first year: the crib sheets that I’ve included (e.g. “Mechanics And Relativity” and “Oscillations And Waves”) reflect my specialization in physics.