All students concentrating in computer science must take three prerequisite computer science courses: COS 126 (or ISC 231–234 or ECE 115), COS 217, and COS 226. AB candidates must also take any one of MAT 202/204/217 or EGR 154. Students should plan to take both COS 217 and COS 226 before their junior year since at least one of them is a required prerequisite for all computer science departmentals.
All prerequisite courses must be taken for a letter grade, not PDF. The three prerequisite computer science courses introduce the core concepts and techniques of the field. All three are offered every semester.
COS 126 - Computer Science: An Interdisciplinary Approach
COS 126: Computer Science: An Interdisciplinary Approach, is a broad technical introduction to the field. It is required for all engineering students as well as prospective computer science concentrators. Normally, one completes this course by the end of their first year.
COS 217 Introduction to Programming Systems &
COS 226 Algorithms and Data Structures
COS 217 deals with the organization of the computing machine itself and the design of core programs needed to use the machine. COS 226 deals with the design and evaluation of efficient algorithms for tasks that are essential to a preponderance of systems programs and applications. It also addresses the efficient organization of data essential to these algorithms. Normally, both COS 217 and COS 226 are completed by the end of sophomore year.