Data Structures and Algorithms
Extension of previously acquired foundational programming experiences, with particular emphasis on the use of data abstraction and object-oriented programming in the design and implementation of fundamental data structures and algorithms. Topics include recursion, basic data structures, efficiency, complexity, primary algorithms for searching, sorting, tree and graph manipulation, hashing, inheritance, and polymorphism. Includes significant programming experiences in a language such as Java. Prereqs: Grade of C or better in COSC 110; grade of C or better in COSC 200 desirable as prereq, but may be taken concurrently or with permission of the instructor.