An introduction to the fundamental concepts of data structures and the algorithms that arise from them, using the object-oriented design
paradigm. Data structures covered include stacks, queues, linked lists, hash tables, trees, and graphs. Other topics include an introduction
to iterative and recursive algorithmic strategies and basic algorithm analysis.
Co-requisite: COMP 172 (unless already taken)