This is an introduction to various data structures, eg singly- and doubly-linked lists, stacks, queues etc. Implementations are written in Java, which kind of defeats the point, but the core knowledge is essential for any programmer. Reimplement them in C as an academic exercise, but in actual programs you should use other people's well-debugged library versions.
Taken by CaraMcNish in the past. Taken by MarkRenolds in the past.
[http://units.uwa.edu.au/CITS2200 Handbook link]