Examines fundamental data structures and analyzes algorithms. Covers abstract data types and essential data structures such as arrays, stacks, queues, linked lists, and trees; introduces searching and sorting algorithms and algorithm analysis. Prerequisites are CSC 201, Computer Science I, and MTH 173, Calculus with Analytic Geometry I; corequisite is MTH 174, Calculus with Analytic Geometry II. Lecture 4 hours per week.
This course is the third course for the student majoring in Computer Science. There are four major purposes of the course. Here we begin a detailed study of data structures and data abstraction. We continue algorithmic analysis by examining various searching and sorting algorithms. Students study object-oriented programming in greater depth. Finally, we continue the development of discipline in program design, in style and expression, and in testing and debugging. The student writes programs larger than those in the previous course. A high-level computer language is used for the students to implement their solutions on a computer.