This course makes use of abstraction (algorithm, data type) and programming tools (pointers, dynamic memory, and linked data structures). This course examines essential data structures (stacks, queues, trees, linked lists, and graphs). It analyzes and implements techniques such as hashing, sorting, searching, and priorty queues to solve general problems. The emphasis of the course is on building computer programs that use the essential data structures. Prerequisites: GEEN 165, (COMP 180 or ECEN 227 or MATH 123) (F;S;SS)