A continuation of COSC 111. This course will emphasize more complicated problems and their algorithmic solutions. The object-oriented programming paradigm will be discussed in detail, including data abstraction, inheritance and polymorphism. Other topics will include linked lists and trees and the use of finite-state machines in algorithm design. A laboratory section will meet once a week to give students practice with programming constructs. Two class hours and one one-hour laboratory per week.
Requisite: COSC 111 or consent of the instructor. This course is the appropriate starting point for most students with some prior programming experience. Fall semester: Professor Rager. Spring semester: L. McGeoch.