Computer Laboratory > Teaching > Course material 2007–08 > Diploma in Computer Science Syllabus and Booklist 2007-2008 > Data Structures and Algorithms

next up previous contents
Next: Digital Electronics Up: Michaelmas Term 2007 Previous: Computer Design   Contents


Data Structures and Algorithms

Lecturer: Dr F.M. Stajano

No. of lectures: 16

This course is a prerequisite for Algorithms II, Computer Graphics and Image Processing, Complexity Theory, Artificial Intelligence I.

Aims

The aim of this course is to provide an introduction to computer algorithms and data structures, with an emphasis on foundational material. It is suitable for people who did not take discrete mathematics in Part IA.

Lectures

Objectives

At the end of the course students should

Recommended reading

* Cormen, T.H., Leiserson, C.D., Rivest, R.L. & Stein, C. (2001). Introduction to Algorithms. MIT Press (2nd ed.). ISBN 0-262-53196-8
Sedgewick, R. (2004). Algorithms in Java, vol 1. (note that C and C++ editions are also available and are equally good for this course). Addison-Wesley. ISBN 0-201-36120-5.
Kleinberg, J. & Tardos, É. (2006). Algorithm design. Addison-Wesley. ISBN 0-321-29535-8.
Knuth, D.E. (1997). The art of computer programming (three volumes so far; a boxed set is also available). Addison-Wesley (3rd ed.). ISBN 0-201-89683-4, 0-201-89684-2 and 0-201-89685-0.

Students are expected to buy and make extensive use of one of the above references: those not doing so will be severely disadvantaged. The easiest and recommended choice is Cormen et al. which covers all the topics in the syllabus: the pointers in the syllabus are to chapters in that book. The other textbooks are all excellent alternatives and are sometimes clearer or more detailed than Cormen, but they are not guaranteed to cover every item in the syllabus. Their relative merits are discussed in the course handout.



next up previous contents
Next: Digital Electronics Up: Michaelmas Term 2007 Previous: Computer Design   Contents