This course is a continuation course in Computer Science which introduces further aspects of software design and implementation. Abstract data types, fundamental data structures and associated algorithms: lists, stacks, queues and trees. Students will be expected to design, implement, test and analyze a number of programs.