The word algorithm is one you may not be familiar with. It is perhaps the most fundamental concept in computer science. Indeed, many people would define computer science as the study of algorithms. By the end of this course I hope you will have reached quite a deep understanding of the notion of an algorithm. For now a suitable definition is simply that an algorithm is a sequence of instructions which, if carried out, perform some task for which they were designed.