skip to primary navigationskip to content

Department of Computer Science and Technology

Algorithms 1

Course pages 2021–22

Algorithms 1

Handouts

The revised course handout is now available.

Example sheets

The example sheet is now available.

Lectures

Live lectures are replaced by online videos this year. Videos would normally be released no later than the date and time of the corresponding lectures, but in this case I am making them all available to you before the start of the course.

The official timetable stipulates lectures on Mon-Wed-Fri 1000-1100, starting on Friday 2022-01-21. You are encouraged to keep the normal pace of the lectures and study each topic in depth as you go along, on the day it would have been lectured, not just watching the videos of that day but also studying the relevant sections of you handout and textbook and doing the relevant exercises and past exam questions assigned by your supervisor. You are of course free to adopt the alternative strategy of binge-watching the whole lot at 2x speed in one weekend if you so wish, but this is quite unlikely to lead to the same level of understanding and retention of the material.

Whatever you do, in your own interest, please don't run behind schedule. Things quickly snowball and it becomes really difficult to catch up. Cambridge terms are brief but intense.

Since I own the copyright and performance rights over my lectures (as does every Cambridge lecturer, according to the Statutes and Ordinances), I have chosen to make my video lectures available to all, not just to students from this Department or from this University. You don't have to request access: just head over to my youtube channel, Frank Stajano Explains. I publish a new video every week, sometimes long and sometimes short, usually on topics of interest to aspiring computer scientists. Subscribe and hit the notification bell to be told of every new video. And please give a thumbs-up to my videos if you enjoy them.

If you have a technical question about anything I said in a lecture, please post it in a youtube comment under the corresponding video, preferably adding a link to the relevant timestamp. I watch all comments and reply to all genuine and pertinent questions. You may also send me email, if you so prefer, at the address at the front of the handout.

The Official Algorithms Playlist contains all and only the videos that, viewed together in sequence, correspond to the 12 lectures I would have given in pre-pandemic times. Sometimes I might produce additional videos that go into greater depth on some topics, or show you how to tackle an exam question. These are not in the official playlist but are included in the Everything Algorithms playlist that is a superset of the former.

To Computer Science Tripos students concerned with what is and what isn't examinable: any topic on the syllabus is examinable. The fact that the additional videos are not on the official playlist does not imply that the topics they cover are not examinable. I might produce an additional video to help students on a topic where I got asked questions (after the lecture in past years; in the youtube comments nowadays), indicating that some of my smartest students had trouble with it. I can't always give such detailed explanations during the normal lectures or I'd run out of time, but with these optional videos I can. In other words: you are expected to watch the official videos; you are not expected to watch the additional videos, but you are welcome to and I hope you will like them and find them useful.

The following annotated snapshot of the official playlist gives the mapping between the videos and the corresponding lectures. Although I miss the live lectures, one benefit of the recorded lectures is that I don't have to stop halfway through at 10:55. These virtual "lectures" are therefore sometimes slightly shorter and sometimes slightly longer than 50 minutes, in order not to split an explanation in mid-topic.